In private development

Planned. The GitHub App is not available; the reusable workflow is in preview and needs the emo command line, which is not released yet.

GitHub App

Planned

Pull request checks for data pipelines.

As designed, the GitHub App lints, tests and prices every pull request that changes a pipeline, and links a preview dashboard. Green checks become the gate for deploying.

How it works

Planned

  1. Open

    Any pull request that changes a pipeline

  2. Check

    Lint, golden tests, cost and a preview link

  3. Gate

    Make the checks required in your branch rules

  4. Deploy

    From the merged commit, with the same command

Overview

What the GitHub App is.

As designed, Emolysis checks pull requests so that every change to a pipeline is linted, tested and priced before it is merged and deployed, by a GitHub App or by a reusable workflow in your own CI.

As designed, you install the app on your GitHub organization or account and choose the repositories it can see. On each pull request it reports four checks: lint against your platform's rules, golden tests run on DuckDB with the fixtures committed in the repository, a cost estimate for your target platform, and a link to a preview dashboard.

Make the checks required in your branch rules and green checks become your deploy gate. Your normal review and merge rules still apply, and what is deployed runs on your platform under your account.

Features

Four checks on every pull request.

As designed, each check reports pass or fail with the details a reviewer needs, so the discussion starts from facts.

  1. Lint

    SQL and Python checked against your platform's lint rules, so known traps, such as Unity Catalog permissions on Databricks or identifier case on Snowflake, are caught before anything runs.

  2. Golden tests

    Each pipeline's golden tests run on DuckDB with the fixtures committed in tests/. A failure shows the failing case and the rows that differ.

  3. Cost

    An estimate of what the change costs to run on your target platform, next to the cost note each template carries, with the cost drivers named.

  4. Preview

    A link to a preview dashboard built from the change, so reviewers can see the result and not only the diff.

  5. Narrow permissions

    The app asks only for read access to repository contents and metadata, and write access to checks and pull requests. You choose which repositories it can see.

  6. Or in your own CI

    If you prefer not to install an app, a reusable GitHub Actions workflow, in preview, runs emo check in your own CI; it needs the emo command line, which is not released yet. It runs on your own runners, and the results appear as checks on the pull request.

How it works

From a branch to a gate.

The planned flow for a team that reviews pipeline changes in GitHub.

  1. Install the app

    Install it on your GitHub organization or account and choose the repositories it can see. Your pipelines live in your own repository as a plain project.

  2. Open a pull request

    emo sync and emo pr, which commit and push the project or open a pull request for the current changes, are planned. The checks cover any pull request that changes a pipeline, whoever opened it.

  3. Read the four checks

    Lint, golden tests, cost and preview report on the pull request. A failure names the lint rule and line, the failing test case and the differing rows, or the cost drivers.

  4. Make them required

    Add the checks to your branch rules. A change cannot merge until they are green, and the same checks guard every deploy.

  5. Deploy from the merged commit

    You deploy from the merged commit with the same command you use everywhere else. Going back means deploying an earlier commit.

Planned commands · not available yetPlanned
emo syncemo pr

Reference

What each check reports.

As designed, every check reports pass or fail. When one fails, the details point at the cause.

The four checksPlanned
CheckWhat it reportsOn a failure
LintSQL and Python checked against your platform's lint rulesThe rule and the line
Golden testsEach pipeline's golden tests, run on DuckDB with the fixtures in tests/The failing case and the rows that differ
CostAn estimate of what the change costs to run on your target platformThe cost drivers
PreviewA link to a preview dashboard built from the change, for reviewersNot applicable

Data handling

Data handling

What the app reads.

The GitHub App is planned. If you install it, it can read the contents of the repositories you choose, to run its checks, and write check results and comments on their pull requests.

Anything in a repository is visible to everyone with access to it and to the CI that runs the checks, so keep the committed fixtures synthetic. Emolysis's services are designed never to connect to your data platform and never to receive your platform credentials. Data from your tables reaches them only in prompts that pass through the metering service and in dashboards you publish.

Prompts are a separate matter. To write code, the agent sends prompts to the AI model provider you choose. A prompt can include table and column names, schemas and sample values from your data. With a paid plan's included usage or usage credits (on Enterprise, metered usage), prompts pass through Emolysis's metering service on the way to the model provider; that service is designed not to store or log their content. The full list is on the security page.

What leaves your machine lists every case.

Questions

GitHub App questions.

Answers about the GitHub App. More in the FAQ.

What does the GitHub App check?

As designed, four things on every pull request. Lint: your SQL and Python checked against your platform's rules. Golden tests: the templates' tests, run on DuckDB with the fixtures committed in your repository. Cost: an estimate of what the change costs to run on your target platform. Preview: a link to a dashboard built from the change, so reviewers can see the result.

What permissions does the GitHub App ask for?

The fewest its checks need: read access to repository contents and metadata, and write access to checks and pull requests. You choose which repositories it can see.

Can I run the checks in my own CI?

Not yet. A reusable GitHub Actions workflow, in preview, runs emo check in your own CI, on your own runners: lint, golden tests and a cost estimate. It needs the emo command line, which is not released yet, and emo check runs the same checks from any other CI system. The GitHub App is planned.

Do I need GitHub to use Emolysis?

No. You can use Emolysis without GitHub. The planned pull request checks, emo sync and emo pr are conveniences for teams that review changes in GitHub, not requirements. Credentials never go into the repository.

Do green checks deploy my pipeline?

No. Deploying is a step you take, and your branch rules and review still apply. Green checks are the gate: make them required, and a change cannot merge or deploy until they pass.

Nothing is released yet

Help shape the GitHub App.

Early access is by invitation, starting with data engineering teams on Databricks.