# geomancer-of-old/v1.migrator architecture

> Architecture diagram of the GitHub repository geomancer-of-old/v1.migrator, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/geomancer-of-old/v1.migrator
- Repository: https://github.com/geomancer-of-old/v1.migrator

## Overview

V1 Migrator is described as a scheduled relational-database migration tool with cleaning, transformation, and validation. The available code is a scaffold: Config.cs defines job, database, pipeline, and run data types; Scheduler.cs is only a property stub; Program.cs prints a greeting. The README documents migration capabilities, but no migration execution or scheduling flow is shown, so those relationships are omitted.

Main entry points: [`Config.cs`](https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs) (Job configuration)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_operator(("Operator"))
node_console["Console entry<br/>[Program.cs]"]
node_job_config["Job configuration<br/>[Config.cs]"]
node_db_endpoints["Database endpoints<br/>[Config.cs]"]
node_pipeline_rules["Pipeline rules<br/>[Config.cs]"]
node_run_state["Run state<br/>[Config.cs]"]
node_scheduler["Scheduler stub<br/>[Scheduler.cs]"]
node_migration_capabilities["Migration capabilities<br/>[README.md]"]

node_job_config -->|"defines source and target"| node_db_endpoints
node_job_config -->|"defines mappings and rules"| node_pipeline_rules
node_job_config -->|"configures failure handling"| node_run_state

click node_console "https://github.com/geomancer-of-old/v1.migrator/blob/main/Program.cs"
click node_job_config "https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs"
click node_db_endpoints "https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs"
click node_pipeline_rules "https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs"
click node_run_state "https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs"
click node_scheduler "https://github.com/geomancer-of-old/v1.migrator/blob/main/Scheduler.cs"
click node_migration_capabilities "https://github.com/geomancer-of-old/v1.migrator/blob/main/README.md"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_operator toneIndigo
class node_console,node_job_config,node_pipeline_rules,node_run_state,node_migration_capabilities toneTeal
class node_db_endpoints toneAmber
class node_scheduler toneRose
```

## Components

### Other components

- **Operator**
- [Console entry](https://github.com/geomancer-of-old/v1.migrator/blob/main/Program.cs): `Program.cs`
- [Job configuration](https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs): `Config.cs`
- [Database endpoints](https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs): `Config.cs`
- [Pipeline rules](https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs): `Config.cs`
- [Run state](https://github.com/geomancer-of-old/v1.migrator/blob/main/Config.cs): `Config.cs`
- [Scheduler stub](https://github.com/geomancer-of-old/v1.migrator/blob/main/Scheduler.cs): `Scheduler.cs`
- [Migration capabilities](https://github.com/geomancer-of-old/v1.migrator/blob/main/README.md): `README.md`

## Connections

- Job configuration → Database endpoints: defines source and target (evidence: `Config.cs`)
- Job configuration → Pipeline rules: defines mappings and rules (evidence: `Config.cs`)
- Job configuration → Run state: configures failure handling (evidence: `Config.cs`)
