ZLink Framework C++ Public Contract¶
Language interface table of contents | Spec table of contents
This directory owns the formal public contract the C++ framework must provide. Public headers and contract tests must follow this contract.
C++ Framework doesn't delegate host capability to a separate application framework. Unlike .NET, which uses ASP.NET Core, Node.js, which uses NestJS, and Java, which uses Spring Boot, it directly provides host, DI, configuration, logging, and HTTP capability. So C++'s HTTP public contract is defined as a separate document in this directory.
| No. | Document | Scope |
|---|---|---|
01 |
System Structure | Package/build target, application host, DI container, configuration, logging, lifecycle, registration surface |
02 |
Per-Capability Interface | Server package's per-capability C++ public type and member |
03 |
Location · Relocation Store · Redis Relocation Notice | Links to the per-capability per-language interface's Store/Redis document |
60 |
HTTP Hosting | HTTP hosting contract |
61 |
Embedded HTTP Server | Embedded server |
The meaning and behavior rule of a capability is owned by the common spec. This directory fixes the public surface that meaning has in C++.
The internal runtime structure isn't a public contract — it's owned by internals/runtime-architecture.
The client connector is owned by the C++ Stream Connector guide and the Stream Connector common spec.
Cancellation Argument¶
The C++ public interface doesn't put a custom cancellation token
copying the .NET shape as a default callback argument. If a
cancellable long-running operation needs explicit cancellation
delivery, it uses standard C++ lifetime and cancellation
convention. Timeout, host shutdown, RAII cleanup, and coroutine
lifetime follow each capability contract.
Language interface table of contents | Spec table of contents