class ObjectFramework::Application

Composes use cases, scoped collaborators, and lifecycle modules. Registrations belong to this instance and become immutable at start.

app = ObjectFramework::Application.new
app.factory(:greeting) { "Hello" }
app.operation(:greet, use_case: Greet, policy: :none, dependencies: [:greeting])
app.start
begin
  app.invoke(:greet, name: "Ada")
ensure
  app.stop
end