Skip to content

Install and qualify the Sales sampleLesson 4 of 6

Learn from an all-red gate

35 min / read + practiceFree lesson

Run the ledger regression demonstration and explain missing-evidence failures.

Audience and time: a BI developer, about 35 minutes. Goal: use the documented offline Sales exercises to distinguish generated artifacts, a working gate and an actual live qualification. You need Node 24 or newer and an approved local library checkout. This lesson makes no Fabric request and requires no Hosted account. Approved repository access is a course prerequisite; the private source path is not a public download instruction.

Start from the learning checkout.

Open a terminal at its root. Confirm that the packages directory contains the dimensional-model and data-ledger packages. Use the root README and the Analytical Spine overview to identify the installation route for your harness, but keep this exercise in the approved learning checkout. Do not initialise a project over an existing proof. Initialisation is for a new project; a retained proof already has its own catalogue, expectations and history.

For an actual Codex target installation, the overview starts with these read-only planning commands:

Learning terminal
node tools/agent-skills.mjs validate suites/analytics-spine.jsonnode tools/agent-skills.mjs plan suites/analytics-spine.json --target <target-repository> --profile full --agents openai-codex

Review required parameters and target writes before using the separately documented apply/verify commands. Installation is not consent to read a database or deploy to Fabric. This lab can proceed from the approved library checkout without applying a target installation.

See a model being built.

Run the documented offline dimensional-model demonstration:

Learning terminal
node packages/powerbi/dimensional-model/tests/demo.mjs

The demonstration uses the AdventureWorks-shaped Sales inputs, the Sales domain seed and a reference contract. It analyses the header/line relationship, validates the draft, performs explicitly fixture-only ratification, generates a semantic model and maps its metadata. Its final checks describe five tables, six relationships and no measures. The temporary artifacts are cleaned up. The script does not contact Fabric or obtain business acceptance.

Pause at “ratification.” In a client project, who is authorised to confirm the grain? What words would distinguish one row per order from one row per order line? The demonstration's fixture decision is useful for learning the protocol, but copying its reviewer identity into a real project would invent approval. Write your answer in your own lab worksheet.

See a gate reject missing proof.

Run the documented ledger regression suite:

Learning terminal
node packages/data/data-ledger/tests/regressions.mjs

Among its checks is an offline proof demonstration that copies only Sales proof inputs into temporary space, without the retained successful run or execution evidence. It creates zero/empty placeholder expectations strictly for this negative test; these are not the Sales oracle values and must never be used for a live proof. It freezes the throwaway test inputs, evaluates all 24 required scenarios and expects failures with reasons. Look for this diagnostic line:

Expected diagnostic
DEMO init=SPINE_INIT_EXISTS freeze=0 gate=1 evaluated=24 failed-with-reasons=24

That is an intentionally failing qualification inside a successful regression exercise. The regression process can pass because it correctly observed the gate refusing unsupported claims. Do not report the inner gate=1 as a broken product, and do not report the outer test pass as a qualified live pipeline.

Explain the missing evidence.

A source index and generated model are inputs and artifacts. They do not show that a particular Fabric notebook completed, that its Gold totals matched the independent oracle, or that the deployed semantic model returned the expected values. Those observations need real producer step results, ledger recording and the required current checks. A screenshot is another distinct observation; it cannot replace a query comparison.

Compare the demonstration with the historical AdventureWorks walkthrough. That record reports a 23-scenario source-entry pass and a separate one-scenario Gold-entry pass. The regression's 24-scenario all-red exercise is not evidence that those two historical projects were one combined live run. Record the distinction in a sentence a finance reviewer could understand.

Decide the next safe step.

For a real Sales qualification, first agree the source query and fact grain. Independently capture the expected values, freeze the reviewed catalogue, then perform each explicitly consented pipeline action and record its results. Keep private values in ignored evidence. Use the overview's ten-step workflow and current package guides; do not fabricate successful receipts to make a training gate green.

Completion check

explain why the model demo passes, why the empty-evidence gate fails, and why neither is your own live report qualification. If you can name the missing observation rather than merely saying “run it again,” you have learned the essential habit: a trustworthy gate makes the absence of proof visible.

Learn from an all-red gate | Analytical Spine