PYX data product agentic engineering
Data Product Agentic Engineering

From a sentence to a governed data product.

AI drafts at every stage. A person rules at every gate. What comes out runs on your own platform, and every number still names the question it answers.

We're starting with a small number of teams, working directly with each one.

↺ Replay
Requirements
PYX
pyx platform
312 objects in
refinement
atomize · rebuild
semantic layer
3 models · one ontology
governance & controls
controls7/7 ✓
SQL
DAX
Pipelines
Jobs
Metrics
release gated · token issued
deliverables
Dana Ruiz · Warehouse operations → bi-requests
Need a report: pick accuracy by zone
Can we get pick accuracy by warehouse zone and shift, weekly? Ops review is every Monday and we’re pulling it by hand from WMS exports. Ideally split by picker and SKU class.
Mon 07:42 · attachment: last_week.xlsx · the fourth ask like this this quarter
5
stages, from a sentence to a published product
1
model a person reviews, and everything downstream generates from it
6
artifact classes generated from that one model
0
connections needed to start designing
The lifecycle

One journey, not four products with a shared logo

Each stage is refused entry until the previous one is honest. That is the whole design: the AI is fast because it never has to guess what was decided, and you are safe because it never gets to decide it.

Completely AI assisted

The AI drafts the model. It does not decide the meaning.

A prompt that returns SQL hands you something to run, not something you can review at the rate it arrives. PYX drafts one level up: a typed, diffable model, and everything below it is generated from what a person approved.

BLOCKING

It finds the questions, you keep the answers

A model is superb at spotting every place a requirement is undecided, and has no business deciding that Finance counts at contract account. So it enumerates, and the analyst rules once, on an artifact that survives the hand-off.

draftedruled on

Every inference carries a confidence and a because

Drafts land on a review surface a human can actually hold, each one pointing at the evidence it came from. A proposal that cannot cite anything is an invention, and it gets refused.

model

Generation is deterministic from what was approved

The blast radius of the AI stops at a reviewed artifact. Nothing is authored downstream by hand, so nothing downstream can quietly disagree with the model.

draft · 0.41conceptphysical tables

Concepts bind late

A measure names a concept, not a physical table. When the table moves, and in a migration it always moves: the meaning does not.

your workspace · your credentials

Design before connection

The whole design plane works offline. You can specify, argue about and generate a customer’s data product before anyone hands you credentials.

effective 2026-08-26 · v14 · reproducible

The reasons stay attached

Why does this number exclude flat-rate accounts? The answer is a dated, attributed clarification on the requirement, not somebody’s memory of a channel thread.

Stage 04 · why the speed is safe

Build it faster. Refuse it when it is wrong.

These are sold everywhere as a trade-off. They are the same model read twice, which is the only reason you can have both. 261 vendor-neutral controls bind to the model you approved, parameterised to your assets, at the moment the meaning is decided rather than months later. The verdict issues a release token the orchestrator reads before anything ships, so a failing control is not a notification, it is a closed door.

Bound at design time
The check is authored where the meaning is authored: the same sentence, written once.
A gate, not an alert
No release token, no publish. Not discipline; a door.
Evidence that survives audit
Control version, parameters, query and observed value, reproducible eighteen months later.
What this replaces

A data product is a chain of translations, and every link loses something

Nothing in a normal stack holds the chain from the sentence a human wrote, to the model that encoded it, to the control that checked it, to the number on the page. So it gets re-derived by hand at every boundary, slightly differently each time.

The requirement is lost by the time it is code

Someone asked for a number in a meeting. Six weeks later a table exists. Nothing connects them, so nobody can say whether the table answers the question.

The same logic gets built three times

Once in the spec, once in SQL, once again in DAX because the report never matched the warehouse. Three definitions, no way to adjudicate.

Migration breaks meaning, silently

The pipeline is green. The number is different. Both statements are true, and neither system in your stack is designed to notice.

Demo · click through it

Where am I on this requirement?

Every list row carries the journey as dots. The blocker chip and the single primary action always agree with them, because one computation produces all three.

pyx · requirements / unbilled-revenue-by-age
Home
Estate
Design
Requirements
Data models
Control
Governance
Catalogue
Warehouse
Connections
Assistant
Requirement · REQ-114 · v3

Unbilled revenue by service-order age

Blocked
RequirementClarifiedModelBuiltGovernedVisualized

“Show unbilled revenue for meter-to-cash, split by how long the service order has been open, so we can see where billing is stalling.”
Submitted by A. Whitfield, Revenue Assurance · 12 Aug

4 claims seeded

Each bullet of the request becomes one claim: the engineering answer to it, checkable against the original wording.

2 open questions · 1 blocking

“Is revenue recognised at meter read or at invoice?”, nothing builds until that is answered. The other is parked, documented, and does not stop the work.

Blocker · 1 blocking question
One computation drives the dots, the blocker and the button, so nothing can disagree.
Where the industry is
Analytics is still vibe coding, and calling it a copilot.

Ask a question, get a number, accept it because it looks about right. Bad code crashes. A bad number presents, and ends up in a board pack nobody can reproduce.

Where it has to go
Data Product Agentic Engineering

Software named this discipline and built it: specs as eval criteria, a harness around the model, verification of both the output and the path it took. Data hasn’t. We think it’s the argument of the next three years, so we wrote the remapping down.

The real thing

Not a mockup: the product, today

Requirements in flight, a model you can argue with, an estate graph you can click. The tour is screenshots from the running app.

Build from requirements
Build from requirements · journey dots on every row
A governance workspace
Nine controls bound; seven of them hold the release
Start a conversation

Have a data problem in mind?

Tell us what you're trying to build or improve. We can talk through whether PYX is a fit.

On timing claims. Anywhere this site says a quarter of hand-built work compresses to weeks, that is a design target rather than a measured result. It gets measured on a real estate, including where it comes in slower.