Every value below comes from the deployed rules registry.
1. Author the rule
In progressNo step chosen yet.
Note for the approver — optional, empty
Carried into the approval record. No patient data.
2. Bind it to columns
Not startedNo column bound yet.
Silver is format alignment. Outcomes is outcome generation. It applies to every binding below: one change is reviewed by one population.
One rule, one or many columns. Each column keeps its own argument values.
1 binding. This change applies the rule to one column.
Source system
Reading the registry…
Medallion move
Reading the registry…
Source column
Select a move first; the column lists come from it.
Derived from the source column as <name>_XFR. The original column is left as it arrived.
Argument values for binding 1 — none set
These belong to this column alone. Two columns bound to one rule may take different values, and that is what the values are for.
No argument values are set.
A change needs at least one binding, so the last one cannot be removed.
Each column you add is part of the same change and the same approval. It is not a second submission.
3. Check its impact
Not startedNothing to check until at least one column is bound.
Dry-run
Reads aggregates only. Writes nothing.
The form does not yet express a proposal, so there is nothing to dry-run.
Sample preview
Per column: the value going in, and the value coming out.
Optional for this rule. Submitting waits on coverage.
The form does not yet express a proposal, so there is nothing to preview.
4. Submit it
Not startedNothing to submit until the rule is authored and bound.
Records this configuration as a change awaiting approval. It writes nothing to Snowflake.
Submitting is blocked: the form does not yet express a proposal.
Approval
What approving does, and what it does not do
This commits one file — the change's configuration as an environment-neutral artifact, carrying no surrogate ids and no database names — on a new branch, and opens one pull request against the rules-engine repository. One pull request per unit of approved work: the optional new rule and every one of its column bindings, together.
It writes nothing to Snowflake. The studio's credential is read-only on every environment, so a write would be refused by the database rather than withheld by this screen. It runs no transformation, rebuilds no data, merges nothing, promotes nothing and deploys nothing.
Someone other than the author still has to merge it. That merge is the human gate, enforced by the rules-engine repository's own branch protection — its default branch requires an approving review, and GitHub does not let a pull request's author approve their own — so no defect in this studio can bypass it.
A merged pull request is not a deployed rule. The rules-engine deploy pipeline applies the merged artifact per environment, and today only main → poc is wired: INT, QA, STG and PRD are the agreed design, not the running system. Where this rule has actually reached is what the environment view reports, from GitHub's own deployment records.
Nothing is overwritten and nothing is physically deleted. The artifact proposes a new effective-dated version, and a deletion is a logical-delete flag — the pipeline applies it as a superseding version if and when the pull request is merged.
There is no merge, promote, deploy or apply action on this screen, and none is shown greyed out. The studio holds no permission to merge and must not imply that it does.
There is nothing to approve yet. A change can be approved only after it has been submitted.