Extension API 2.0

Cybermaps\Core\ExtensionAPI::get_instance() exposes a narrow public boundary.

Capabilities

  • endpoints() registers validated metadata for an implemented extension endpoint.
  • eligibility() returns the same final publication decision used by Core.
  • audits() provides read-only access to completed audit runs.

The readiness action is:

cybermaps_extension_api_ready

Endpoint registration errors are rejected without preventing Core from loading.

Deliberate boundaries

Extension API 2.0 does not expose:

  • Core’s service container;
  • Core settings ownership;
  • filesystem ownership records;
  • route callbacks;
  • audit mutation;
  • licensing; or
  • an updater.

An extension uses its own namespace, options, tables, routes, assets, lifecycle, generated files, and uninstall behavior.

Core owns the final eligibility decision and preserved audit records. Integrations consume those services rather than replacing internal objects or duplicating the Cybermaps\ namespace.