Skip to main content

Crate nexo_plugin_discovery

Crate nexo_plugin_discovery 

Source
Expand description

Plugin catalogue discovery (Phase 98).

Fetches public plugin metadata from three sources, merges by crate_name, derives compat + trust tier, caches to disk with 24-hour TTL. Built as a standalone crate so a future microapp UI mirror (Phase 98 deferred #6) can reuse it without depending on the daemon.

Top-level surface:

  • config::DiscoveryConfig — bake-in defaults + per-deployment overrides.
  • cache::DiskCache — atomic temp+rename writer with TTL gate.
  • types — typed payload re-exports of the wire shapes shipped by nexo_tool_meta::admin::plugin_discovery (98.5), with construction helpers + serialization-friendly defaults.

Modules§

cache
Disk cache for the merged catalogue.
client
DiscoveryClient trait + DefaultDiscoveryClient orchestration.
compat
SDK / daemon version compat gate.
config
Runtime configuration for crate. Baked-in defaults match the “first-party Nexo” deployment shape — operators override per-knob via daemon main.rs.
manifest_fetcher
Fetch + parse a plugin’s nexo-plugin.toml from a raw GitHub URL (or other HTTP-accessible location). Derives the catalogue’s PluginCategory from the present manifest sections per the Phase 81.33.b.real auto-discovery design.
merge
Merge per-source contributions into a single catalogue.
sources
Discovery sources.
types
Local re-exports of the nexo_tool_meta::admin::plugin_discovery wire shapes plus internal construction helpers.