This is an automated email from the ASF dual-hosted git repository. Aman-Mittal pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/fineract-business-intelligence.git
commit 0b989e76869f1fffa6e16e274ce95d086aad021d Merge: 5a7a8b2 67f61bf Author: Aman-Mittal <[email protected]> AuthorDate: Tue Aug 11 12:25:49 2026 +0530 Merge pull request #65 from airajena/chore/bi-linting-and-quality-gates chore: Add ruff, sqlfluff, and shellcheck .github/workflows/ci.yml | 24 +++++++ requirements-dev.txt => .sqlfluff | 23 +++++- requirements-dev.txt => .sqlfluffignore | 7 +- .../intermediate/int_loan_delinquency_status.sql | 61 +++++++++------- dbt/models/marts/dimensions/dim_date.sql | 26 +++---- .../marts/dimensions/dim_delinquency_bucket.sql | 38 +++++----- dbt/models/marts/dimensions/dim_office.sql | 2 +- dbt/models/marts/facts/fact_delinquency_event.sql | 50 ++++++------- dbt/models/marts/facts/fact_loan_snapshot.sql | 21 +++--- dbt/models/staging/stg_m_client.sql | 10 +-- dbt/models/staging/stg_m_currency.sql | 6 +- dbt/models/staging/stg_m_delinquency.sql | 23 +++--- dbt/models/staging/stg_m_loan.sql | 6 +- dbt/models/staging/stg_m_loan_transaction.sql | 12 ++-- dbt/models/staging/stg_m_office.sql | 8 +-- dbt/models/staging/stg_m_product_loan.sql | 4 +- ...t_borrower_count_never_exceeds_transactions.sql | 7 +- .../assert_collection_efficiency_within_bounds.sql | 5 +- .../assert_marts_have_no_orphan_dimension_keys.sql | 10 +-- dbt/tests/assert_no_future_dated_facts.sql | 10 +-- dbt/tests/assert_no_negative_amounts_or_counts.sql | 35 ++++----- ...ssert_par_components_never_exceed_portfolio.sql | 13 ++-- dbt/tests/assert_par_hierarchy_never_violated.sql | 9 +-- dbt/tests/assert_par_ratios_within_bounds.sql | 9 +-- ...sert_repayment_components_dont_exceed_total.sql | 12 ++-- .../initdb/001_init_fineract_databases.sh | 2 +- docker/superset/bootstrap_superset_assets.py | 83 +++++++++++++--------- docker/superset/bootstrap_superset_security.py | 3 +- extractor/config.py | 2 +- extractor/extractor.py | 23 +++--- extractor/watermark_manager.py | 10 +++ requirements-dev.txt => pyproject.toml | 9 ++- requirements-dev.txt | 2 + scripts/bootstrap_source.sh | 2 - scripts/check_licenses.py | 2 +- scripts/common.sh | 1 + scripts/run_pipeline.sh | 8 +-- scripts/stop_fineract_backend.sh | 2 +- scripts/verify_extraction.sh | 8 ++- tests/unit/extractor/test_cob_gate.py | 10 +-- tests/unit/extractor/test_config.py | 4 +- tests/unit/extractor/test_helpers.py | 11 +-- tests/unit/extractor/test_source_query.py | 4 +- tests/unit/extractor/test_watermark.py | 72 ++++++++++++++++--- tests/unit/superset/test_build_layout.py | 7 +- 45 files changed, 420 insertions(+), 276 deletions(-)
