Table of Contents

Class PluginManifest

Namespace
DotBoxD.Plugins
Assembly
DotBoxD.Plugins.dll
public sealed record PluginManifest : IEquatable<PluginManifest>
Inheritance
PluginManifest
Implements
Inherited Members

Constructors

PluginManifest(string, string, ExecutionMode, IReadOnlyList<string>, IReadOnlyList<LiveSettingDefinition>, IReadOnlyList<HookSubscriptionManifest>)

public PluginManifest(string PluginId, string Contract, ExecutionMode Mode, IReadOnlyList<string> Effects, IReadOnlyList<LiveSettingDefinition> LiveSettings, IReadOnlyList<HookSubscriptionManifest> Subscriptions)

Parameters

PluginId string
Contract string
Mode ExecutionMode
Effects IReadOnlyList<string>
LiveSettings IReadOnlyList<LiveSettingDefinition>
Subscriptions IReadOnlyList<HookSubscriptionManifest>

Properties

Contract

public string Contract { get; init; }

Property Value

string

Effects

public IReadOnlyList<string> Effects { get; init; }

Property Value

IReadOnlyList<string>

LiveSettings

public IReadOnlyList<LiveSettingDefinition> LiveSettings { get; init; }

Property Value

IReadOnlyList<LiveSettingDefinition>

Mode

public ExecutionMode Mode { get; init; }

Property Value

ExecutionMode

PluginId

public string PluginId { get; init; }

Property Value

string

RequiredCapabilities

Capabilities the verified IR requires — derived by the analyzer from what the kernel actually touches (a host-message send, a [HostBinding] call, a [Capability]-gated event property), never self-asserted for trust. Declarative: the host gates installs through binding capabilities and policy grants. Optional, defaults to empty; set via object initializer.

public IReadOnlyList<string> RequiredCapabilities { get; init; }

Property Value

IReadOnlyList<string>

RpcEntrypoint

For a server extension kernel: the id of the single request/response entrypoint function the host invokes with caller arguments and whose result it returns (see InstalledKernel.InvokeServerExtensionAsync). null for ordinary event kernels, which dispatch through ShouldHandle/Handle instead. Additive; defaults to null.

public string? RpcEntrypoint { get; init; }

Property Value

string

Subscriptions

public IReadOnlyList<HookSubscriptionManifest> Subscriptions { get; init; }

Property Value

IReadOnlyList<HookSubscriptionManifest>