Skip to content

Framework Semantics

Cullinan is not organized around a manually wired app object. It is organized around decorator-first business code, import-executed discovery, explicit module boundaries when needed, and a curated public API surface.

Read in this order

  1. Framework Semantics β€” the rules Cullinan enforces
  2. Architecture β€” the current framework layers and execution flow

Core questions answered here

  • How does automatic discovery really work?
  • What does @module mean in Cullinan?
  • Why is Inject() strict?
  • What is guaranteed, what is compatibility-only, and what is advanced?

Next step

Once the semantic model is clear, continue with:

Advanced topics

If you intentionally need explicit runtime orchestration or lower-level runtime behavior, jump to Internals & Extensions.