| 12345678910111213141516171819202122232425262728293031323334353637 |
- """Inspect or repair orphaned governed DataFlow create Sagas."""
- from __future__ import annotations
- import argparse
- import json
- from app import create_app, db
- from app.core.data_flow.create_reconciliation import DataFlowCreateReconciler
- from app.core.data_rules.repository import DataRuleRepository
- def main() -> None:
- parser = argparse.ArgumentParser(
- description="Reconcile database-owned governed DataFlow create intents"
- )
- mode = parser.add_mutually_exclusive_group()
- mode.add_argument("--apply", action="store_true")
- mode.add_argument("--dry-run", action="store_true")
- parser.add_argument("--limit", type=int, default=100)
- parser.add_argument("--lease-seconds", type=int, default=60)
- args = parser.parse_args()
- app = create_app()
- with app.app_context():
- report = DataFlowCreateReconciler(
- DataRuleRepository(db.session)
- ).run(
- dry_run=not args.apply,
- limit=args.limit,
- lease_seconds=args.lease_seconds,
- )
- print(json.dumps(report, ensure_ascii=False, sort_keys=True))
- if __name__ == "__main__":
- main()
|