@@ -231,13 +231,46 @@ That invisible reliability is the actual product.
231231- Do we expose customer-published templates in v1, or hold them for v2?
232232- How do we surface template versioning and deprecation to consumers
233233 who may have thousands of live claims at any moment?
234- - ** Upstream API alignment.** Datum's user-facing API deliberately mirrors
235- the [ kubernetes-sigs agent-sandbox] [ upstream ] vocabulary where semantics
236- align, and Datum will ship an optional compatibility layer that accepts
237- upstream resources and translates them to Datum-native ones. We are not
238- adopting the upstream schema as our v1 contract while it remains pre-1.0,
239- and we will revisit that decision when upstream cuts a stable release or
240- introduces a non-Pod-shaped runtime abstraction.
234+ - Whether the upstream compatibility layer (see below) ships in phase 1
235+ or follows the MVP.
236+
237+ ## Upstream compatibility
238+
239+ The Kubernetes community is standardizing this shape of compute through the
240+ [ kubernetes-sigs agent-sandbox] [ upstream ] project. We want Datum to be a
241+ visible, credible participant in that ecosystem — both because it accelerates
242+ adoption (any tool, SDK, or framework built against the upstream API works
243+ on Datum on day one) and because it signals that Datum competes on runtime
244+ quality, not on owning the schema.
245+
246+ Our approach has three parts:
247+
248+ - ** Mirror the vocabulary.** Datum's native API uses the same resource
249+ names, field names, status phases, and lifecycle verbs as upstream
250+ wherever the semantics line up. A developer who has read the upstream
251+ docs already knows most of Datum's API on first contact.
252+ - ** Ship a compatibility layer.** A thin, optional component that accepts
253+ upstream ` agents.x-k8s.io ` resources and translates them into Datum-native
254+ ones. Customers who want portability between Datum, GKE, and self-hosted
255+ clusters can write a single set of manifests and run them anywhere.
256+ - ** Contribute upstream.** Bring the patterns Datum's runtime unlocks
257+ (snapshot-based warm pools, sub-second allocation, non-Pod-shaped
258+ isolation backends) back to the SIG so the standard evolves toward
259+ something Datum can eventually adopt natively.
260+
261+ We are intentionally ** not** adopting the upstream schema as Datum's v1
262+ contract while it remains a pre-1.0 API. Doing so would tie Datum's
263+ stability promises to upstream's churn and would force the unikernel
264+ runtime through a Pod-shaped abstraction that doesn't fit it. We will
265+ revisit that decision when upstream cuts a stable release or introduces a
266+ runtime abstraction that isn't Linux-Pod-shaped.
267+
268+ ** Phase 1 scope.** The compatibility layer is likely to land * after* the
269+ MVP rather than alongside it. Phase 1 prioritizes shipping the Datum-native
270+ API, the curated catalog, and the warm-pool fast path — the things that
271+ make the product worth adopting in the first place. Upstream compatibility
272+ is an adoption accelerator, not a prerequisite for the headline experience,
273+ and we'd rather ship the differentiator first and the bridge second.
241274
242275## What's * not* in scope
243276
0 commit comments