Returns the schema of a registered module, or null if no module
with the given id is registered.
Module id (e.g. 'poi', 'route', 'search').
Returns a read-only snapshot of all registered modules.
The order matches the insertion order of ModuleRegistry.register().
After registry.init(), this includes both built-in and lazily
registered plugin modules.
Returns the introspectable schema of a registered capability, or null
if no capability with the given id has been declared.
The returned schema never contains the loader field.
Capability id (e.g. 'labels', 'route', 'cluster').
Returns introspectable schemas for all registered capabilities.
Order matches the order in which registerCapability() was called.
No loader field on any returned item.
Consumed by studio / form-builder plugins to enumerate available features.
Returns, for every declared capability, what switches it on and why.
One question, one answer — distinct from both neighbours:
getAllCapabilities() returns what is declared (the schema);getActiveModules() returns what is running (initialised modules);enabled is re-read on each call against GeoLeaf.Config, hence against the
profile-merged config as soon as the profile is loaded. Before boot() no config is
loaded and every gate answers its enableWhenAbsent — which is the exact answer to
"with what is configured right now", not a fallback value.
Order matches registration order.
Read-only introspection surface exposed as
GeoLeaf.Introspection.Consumed by studio and form-builder plugins (P4) to enumerate active modules and read their declared schemas without coupling to the registry internals.
Example