Customer deployments

Your product has versions. Your customer deployments should too.

You would never ship code without knowing which version is in production. Most companies selling into enterprises cannot say which version each customer is running, what that customer approved, or what broke last time. Not because they are careless, because nothing models it.

One vendor, one product, four truths

Acme AI has shipped version seven. Nike is on five and working. Pepsi is on seven and waiting for an administrator who has not looked at their queue. Adidas is on six and degraded, because Slack is having a bad afternoon. Visa is on four and disconnected, because somebody revoked the grant.

Every one of those is a different conversation with a different person and a different fix. A dashboard that showed one number for "integration health" would describe none of them.

Acme AIProduct v7
CustomerRunningState
Nikev5Healthy
Pepsiv7Waiting on admin· Admin consent
Adidasv6Degraded· Slack
Visav4Disconnected· Grant revoked

Four customers, four versions, four states. None of them is wrong.

"Connected" does not mean "working"

Three things can be true at once and disagree. The endpoint can answer perfectly while the tenant has never granted admin consent, which means no capability has ever run. A green dot that averages those three is not a summary, it is a guess with a colour.

Meetext reports the layers separately, and a deployment is only called working once a real capability has executed against the vendor's own system. OAuth completing is not evidence.

When Meetext does not know, it says it does not know. Time that cannot be attributed to somebody is reported as unattributed rather than quietly assigned to whoever makes the number look best.

ProtocolConnected

The endpoint answers and speaks the protocol.

DeploymentWaiting on customer admin

Admin consent has not been granted in the tenant.

CapabilitiesUnavailable

Nothing can execute, so nothing has been proven.

What becomes possible once it is an object

Freeze

The package a customer got is frozen at install. Publishing version seven does not silently change what Nike is running.

Upgrade deliberately

Moving a customer forward is an action somebody takes, with a record of who and when, not a side effect of a deploy.

Roll back to something real

Rollback targets are earlier deployments of this environment that actually reached a working state, not version numbers somebody hopes exist.

Diff two customers

Nike and Adidas failing differently is a question you can ask, because both are objects with the same shape.

Attribute the wait

Elapsed time is split across 9 deployment states and assigned to whoever actually held it, including nobody once the deployment is serving.

Replay the history

The record is append only. What Meetext believed last March can be reconstructed, not inferred from today's state.

This is the asset, not the dashboard

Every deployment that runs through Meetext leaves behind a record of what worked, what failed, in which environment, and what fixed it. That accumulates into something no individual vendor can build alone, and it is what the automation on top is being built from.

2 environments free

Stop assigning an engineer to every customer.

Connect a source, publish, and send one link. Your next enterprise customer installs itself.

2 customer environments free, forever. No card required.