Skip to content

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

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

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>
@matthewmoorcroft

Copy link
Copy Markdown
Member Author

@ghanse Can we get this merged, need it in to reconcile my other PRs with this repo and get them ready to merge

@ghanse ghanse left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting this together, this LGTM.

@ghanse ghanse mentioned this pull request Sep 4, 2026
3 tasks
ghanse added a commit that referenced this pull request Sep 4, 2026
## Changes
<!-- Summary of your changes that are easy to understand. Add
screenshots when necessary -->
This PR is based on #22 and merges internal changes into the flowx repo:

* Airflow support (@peterpark-db)
* Fix missing notebook headers in bridge notebooks (@lorenzorubi-db )
* Emit `sync.include` in generated `databricks.yml` (@alexnastetsky )
* Fixes to documentation (@zanitarahimi)
* Consolidation and conflict resolution (@matthewmoorcroft )
* Updates to GitHub actions (@matthewmoorcroft and @ghanse )

### Linked issues
<!-- DOC: Link issue with a keyword: close, closes, closed, fix, fixes,
fixed, resolve, resolves, resolved. See
https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword
-->

Resolves #18 

### Tests
<!-- How is this tested? Please see the checklist below and also
describe any other relevant tests -->

- [x] manually tested
- [x] added unit tests
- [x] added integration tests

---------

Co-authored-by: matthewmoorcroft <31916486+matthewmoorcroft@users.noreply.github.com>
@ghanse

ghanse commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator

Closed by #43

@ghanse ghanse closed this Sep 4, 2026
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.

2 participants