Cloud Server (Croes, 2012, rev. 2026)

URL: https://github.com/dworkin/cloud-server

The dworkin/cloud-server repository is Felix A. Croes's canonical DGD application kernel — the layer of LPC code above the bare DGD driver that mediates compile-and-load, separates kernel from user privilege, manages resource quotas, enforces file access control, and provides a basic wiztool for administrative work. The repository's own README states the intent in one sentence: "The Cloud Server library is intended as a basis for other LPC projects." Cloud-server is not a complete game or application; it is the platform a DGD-based application is expected to extend or replace selectively.

The eOS-Harness MVA work surveys cloud-server as the candidate foundation against which a clean-room kernel-layer reimplementation is the alternative. The survey was conducted at HEAD 9994bc3 (2026-03-14). This Reference node captures what the survey found.

License

LICENSE declares the Unlicense (public domain dedication). Verbatim:

"This is free and unencumbered software released into the public domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means."

Cloud-server is not AGPL-3. Earlier internal framing had claimed AGPL-3 contagion applied to cloud-server-derived code; that claim was wrong and was corrected during this survey. Derivative code can ship under BSD-2-Clause-Patent (eOS-Harness's intended license) without license friction.

The DGD driver itself remains AGPL-3 (separate dworkin/dgd repository). eOS-Harness builds on DGD by linking the runtime, not from its source — the AGPL-3 obligation applies to modifications and distribution of the driver, not to applications running on it.

Author and Lineage

Felix A. Croes (GitHub: dworkin; email: felix@dworkin.nl). DGD's original author and ongoing maintainer; the alias "Dworkin" predates GitHub and traces to the MUD-era driver-development community.

Git history at HEAD 9994bc3:

The 2012 import is a reorganization of code that had existed in Croes's mudlib for many years before; the repository is the post-2012 maintained line. The reference filename uses (Croes, 2012, rev. 2026) to acknowledge both the public-release year and the surveyed-revision year.

What Cloud-Server Provides

At the worktree HEAD, cloud-server's kernel-layer surface includes:

Mapping to the Eight Runtime Primitives

The eOS-Harness strategic claim is that DGD's runtime primitives serve as platform for agent infrastructure. Eight primitives are named in the upstream value-proposition document. The mapping below states what the DGD driver provides directly, what cloud-server's kernel layer mediates, and what gaps would remain on top of cloud-server for the MVA's atomic-operation demonstration and beyond.

Primitive DGD driver Cloud-server mediation Gaps for MVA
Atomicity atomic{}, transaction rollback Yes -- _compile() is atomic; TLS accumulates rollback state Need a user-facing atomic-transaction example object for the demo
Capability separation previous_program() call-chain Yes -- kernel/system/user tiers; KERNEL(), SYSTEM() macros; accessd Provided; no gaps
Persistent state dump_state(), restore_object(), snapshots Yes -- dump_file in cloud.dgd; prepare_reboot()/restored() callbacks; rsrc quota persistence Provided; no gaps
Hot reload Recompile via compile_object() Yes -- wiztool :compile; driver compile() callback logs the event Provided; the hot-reload demo flows directly
Sandboxed code load compile_object(), inherit_program() filters Yes -- inherit_program checks read access via accessd; objectd interception point Provided; no gaps
Asynchronous events call_out(), async I/O, datagram/binary ports Partial -- userd creates connections; call_out is present but not coordinated as an event loop Need an event-dispatch wrapper -- queue, coroutines, or continuations
Coherent multi-agent semantics User-object sessions, per-user resource limits Partial -- per-port connections, per-owner resource tracking Need agent identity wrapper, inter-agent message protocol
State introspection status(), call_trace() Partial -- status used internally; no public introspection endpoint Need JSON/HTTP introspection layer for agent state and object registry

The four primitives marked "Provided" cover the MVA's hello-world and atomic-operation demos. The four marked "Partial" are downstream concerns (HTTP listener, agent identity, event dispatch, state introspection).

Adopted

If the foundation decision selects cloud-server, the eOS-Harness MVA likely adopts:

Adopted with modification

Not adopted

(Reclassified 2026-04-26 per the foundation decision to adopt cloud-server with a hard fork. HTTP/TLS/JSON modules previously listed here moved to "Adopted with modification" above; the MVA transport per the local-inference-server pattern uses HTTP on 127.0.0.1.)

Conspicuously missing (for the MVA's downstream work)

Pieces eOS-Harness needs that cloud-server does not provide:

Adoption-vs-clean-room implications

With AGPL-contagion ruled out, the foundation tradeoff reduces to:

The license dimension of the tradeoff is gone. The remaining dimensions are engineering effort and shape-fit. The clean-room sketch and the foundation decision weighed those.

Relations