Skip to content

Compatibility

open-compute implements the declared Cloudflare Workers programming model. For each product that is provided, the Worker API matches Cloudflare's documentation. The topology is a single node (one ocd, one pinned workerd).

Live limits and release identity:

sh
ocd --config /etc/open-compute/config.toml capabilities --json

--config is optional for capabilities. Without it, limits come from the embedded default config; with an absolute config path, limits reflect that file.

Worker-side signatures: Workers runtime APIs. Index on this site: API reference. Single-node behavior: Behavior differences. Numeric ceilings: Limits.

Products

ProductWorker APITopology difference
WorkersModule Workers (fetch / scheduled / queue)Single-node workerd; no global edge
KVKVNamespaceLocal SQLite; no global replication
R2R2BucketObject bytes on the configured S3; no global placement
D1D1DatabaseLocal SQLite primary; no read replicas or region routing
Durable ObjectsDurableObject / DurableObjectNamespacePlaced on the single local workerd process
Alarmsstate.storage.setAlarmLocal scheduler
QueuesQueue and consumer handlersLocal scheduler.sqlite; at-least-once, no global FIFO
Cronscheduled handlerUTC, five fields; recovery projects at most the newest misfire
WorkflowsWorkflows APILocal SQLite; callbacks are at-least-once until commit
Cache APIcaches.defaultSingle-node cache
Workers CacheAutomatic HTTP cacheSingle node; requires explicit s-maxage / max-age
Static AssetsAssets bindingImmutable S3 content served locally; no global CDN
Service BindingsFetcherSame platform; no cross-region discovery
DeploymentsVersions, promotion, rollbackLocal SQLite and one runtime generation
ImagesImages bindingBounded local raster transforms; not hosted Cloudflare Images
Version MetadataDeployment id / tag / timestampProduced by local deploy authority
WebSocket hibernationHibernatable WebSocketsOn the local Durable Object process

D1 covers database / session / prepared statement / result / meta, errors and bind conversions, atomic batches, and opaque bookmarks. General TCP outbound uses the one public Network and stock workerd's cloudflare:sockets / Node socket implementation; named Service / DO Fetcher.connect() uses an explicit capability tunnel.

Runtime

The platform freezes the compatibility date. open-compute.json cannot set compatibilityDate or flags. Use runtime.effective_compatibility_date. Do not swap a workerd beside the binary, search PATH, or download another runtime.

Products that are not provided: Unsupported. Operators can inspect the running binary with ocd capabilities --json.