Operate & govern

Reconciliation against declared state.

Vadyl declares the world. Connectors continuously reconcile against the declaration. DetectDriftAsync surfaces what's diverged. ReportHealthAsync surfaces what's failing. The /healthz/live + /healthz/ready split keeps liveness independent of dependency outages — a downed Postgres cannot make Kubernetes restart your pod.

The canonical six-method connector surface

Health and drift, peer to operations.

ValidateBindingAsync

Up-front validation. Fail-closed on missing or unverifiable references — ARNs, endpoints, credentials. No warn-and-accept.

ComputeEffectiveCapabilitiesAsync

Returns the resolved capability set for the binding. The compiler consults this before deployment — capability mismatches fail closed at compile, not at runtime.

ResolveAccessAsync

Materializes a ResolvedAccessDescriptor with stable pool identity (IProviderConnectionMaterializer Constant or Rotating). Pool identity survives secret rotation and IAM-token refresh.

DescribeResourceAsync

Returns the realized provider identity and topology. Endpoint, ARN, version, region — the actual deployed shape, not the desired declaration.

ReportHealthAsync

Real connectivity + auth + capability probe. Real driver libraries, not synthetic pings. Dashboard surfaces the health derivation; alarms key off the typed status.

DetectDriftAsync

Compares declared vs realized. Drift surfaces as a typed delta — what's added, what's changed, what's missing. Reconciliation runs through the same channels as deployment.

Liveness vs readiness

K8s-style probe split. Liveness independent of deps.

/healthz/live is mapped with Predicate = _ => false so dependency outages cannot flip it to 503 — a downed database cannot make Kubernetes restart your pod and amplify the outage. /healthz/ready is the aggregate readiness check; 503 when any registered dep reports Unhealthy. Two probes, two semantics, never confused.

6
Method canonical surface

Validate · Capabilities · Access · Describe · Health · Drift

Continuous
Reconciliation

Declared vs realized

Independent
Liveness

Survives dependency outages

Typed
Drift deltas

Add · change · remove

Detect drift before it becomes an incident.

Declarative state. Continuous reconciliation. Honest probe semantics. Every connector exposes the same six methods. Operators see the same shape of health everywhere.