Skip to content

Expand flowx: Airflow source, coverage reporting, notify motifs, and translation restructure - #22

Open
matthewmoorcroft wants to merge 2 commits into
mainfrom
unify/reconcile-internal
Open

Expand flowx: Airflow source, coverage reporting, notify motifs, and translation restructure#22
matthewmoorcroft wants to merge 2 commits into
mainfrom
unify/reconcile-internal

Conversation

@matthewmoorcroft

@matthewmoorcroft matthewmoorcroft commented Sep 1, 2026

Copy link
Copy Markdown
Member

Summary

A substantial expansion of flowx's capabilities plus a cleaner module structure, building on the existing global-parameters support.

What's new

  • Apache Airflow migration source — translate Airflow DAGs alongside ADF.
  • Coverage reporting & source audit — per-pipeline reconciliation status, migration status, and translation-coverage reporting.
  • Notify motifs — collapse activity→notification patterns into Databricks job notifications (email / Slack / Teams / PagerDuty / webhook).
  • pydabs-dbt-factory hooks and metadata-driven consolidation.
  • Translation restructure — the translation engine is reorganized under sources/adf/, with IR serialization extracted into ir_serde.

The existing global-parameters support (bundle_variables / hoisted globals / global_parameter_resolution) is preserved and integrated throughout (session options, dab_writer, prereqs_writer, workflow_preparer, ir, ir_serde).

Verification

  • 1194 unit tests pass; ruff + mypy clean.

Reviewer notes

  • Skill docs (skills/*/SKILL.md) restructured; detailed content now lives under skills/*/sources/*.md.
  • .github/workflows/ left unchanged.
  • uv.lock regenerated against the updated pyproject.toml.
  • global_parameter_resolution is gated to the adf source.

This pull request and its description were written by Isaac.

Brings the full internal flowx development line into databricks-solutions/flowx
as a single clean snapshot, establishing this repo as the single source of truth
(the two repos had forked into parallel development).

Internal features folded in (59 commits' worth): Apache Airflow migration source,
source-audit reconciliation + coverage reporting, pydabs-dbt-factory hooks, notify
motifs, metadata-driven consolidation, and the engine -> sources/adf restructure
with serialization extracted to ir_serde. The public repo's own global-parameters
feature (bundle_variables / hoisted globals / global_parameter_resolution) is
preserved and unioned in throughout (session options, dab_writer, prereqs_writer,
workflow_preparer, ir, ir_serde).

Published as a squashed snapshot rather than the raw internal history so no
internal/customer identifiers leak into public git history. Identifiers scrubbed
from the snapshot: a customer engagement code (test fixtures/names), an employee
test Azure SQL host, a real ADLS account name, a real Azure subscription GUID, and
internal test resource-group / factory names — all replaced with neutral
placeholders.

Verified: 1194 unit tests pass; ruff + mypy clean.

Co-authored-by: Isaac <no-reply@databricks.com>
@matthewmoorcroft matthewmoorcroft changed the title Unify flowx: reconcile internal development into the public repo Expand flowx: Airflow source, coverage reporting, notify motifs, and translation restructure Sep 1, 2026
Rewrite internal package-proxy URLs (pypi-proxy.dev.databricks.com) to
pypi.org / files.pythonhosted.org so public CI resolves deps. Same pinned
versions and hashes; matches main.

Co-authored-by: Isaac <no-reply@databricks.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant