Expand description
CR.3: the help guest→host topic-registration seam.
The help guest→host topic-registration seam (CR.3).
Design:
contributable-registries.md
§3.1, and the help WIT interface.
A help-contributing plugin implements the help-plugin world: it
imports the help API (register-topic) and exports
register-help-topics, which the host calls once to drive declaration.
The theme-plugin precedent, shape for shape.
§What this module does NOT do
It does not touch lattice-help. The seam collects plain
[HelpTopicSpec] values and hands them back; lattice-plugin-loader
turns them into HelpTopics and RCU-registers them into the
HelpTopicRegistryHandle. That keeps the dependency pointing the way it
already does — the loader is the crate that knows about the editor’s
native registries, the host is the crate that knows about wasm — and
costs nothing, because a help body is inert data on both sides of that
line.
§Namespacing is host-side, from host ground truth
[namespaced_topic_name] derives the registered name from the manifest
id the HOST holds, never from anything the guest passes. A guest cannot
name a topic outside its own namespace, so collisions with builtins and
between plugins are structurally impossible rather than a policy the
loader has to enforce and a user has to debug.
Structs§
- Help
Topic Spec - One topic a guest declared, ready for the loader to register.
Functions§
- namespaced_
topic_ name - The registered name for a topic a plugin declared.
- validate_
topic - Validate a guest’s topic declaration, or reject it.