From 1928d26cde0026a2715c7f47ff6ab997aa8bf2e4 Mon Sep 17 00:00:00 2001 From: NotAShelf Date: Sun, 8 Mar 2026 15:16:37 +0300 Subject: [PATCH] chore: update sample configuration with new plugin fields Signed-off-by: NotAShelf Change-Id: Iabfbaff84bb0dbf3f172997adc9aabd36a6a6964 --- pinakes.example.toml | 52 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 45 insertions(+), 7 deletions(-) diff --git a/pinakes.example.toml b/pinakes.example.toml index 0a3c7c7..596f0a0 100644 --- a/pinakes.example.toml +++ b/pinakes.example.toml @@ -292,16 +292,54 @@ enabled = false ## Plugin Configuration [plugins] -# Directory containing WASM plugin files -# Default: /plugins -# directory = "~/.local/share/pinakes/plugins" - -# Enable plugin system (experimental) -# NOTE: The plugin system has not been finalized, and the API is subject to change. -# Please report any bugs, and expect breaking changes. +# Enable plugin system # Default: false # enabled = false +# Directories to scan for plugins (each containing a plugin.toml + .wasm binary) +# Default: [] +# plugin_dirs = ["/etc/pinakes/plugins", "~/.local/share/pinakes/plugins"] + +# Allow loading unsigned plugins (disable in production to enforce signatures) +# Default: false +# allow_unsigned = false + +# Hex-encoded Ed25519 public keys trusted for plugin signature verification. +# Plugins must ship a plugin.sig (Ed25519 signature over the BLAKE3 hash of the +# WASM binary). If allow_unsigned is false and no trusted keys match, the plugin +# is rejected. +# Default: [] +# trusted_keys = [ +# "a1b2c3d4e5f6...64_hex_chars...", +# ] + +# Maximum concurrent plugin operations (e.g., parallel metadata extraction) +# Default: 4 +# max_concurrent_ops = 4 + +# Global plugin timeout in seconds (legacy, prefer per-tier timeouts below) +# Default: 30 +# plugin_timeout_secs = 30 + +# Circuit breaker: auto-disable a plugin after this many consecutive failures +# A successful call resets the counter. Reload or toggle to re-enable. +# Default: 5 +# max_consecutive_failures = 5 + +# Per-tier timeout configuration +# [plugins.timeouts] +# Timeout for capability queries (supported_types, interested_events, can_handle) +# Default: 2 +# capability_query_secs = 2 +# +# Timeout for processing calls (extract_metadata, generate_thumbnail) +# Default: 30 +# processing_secs = 30 +# +# Timeout for event handler calls (handle_event) +# Default: 10 +# event_handler_secs = 10 + ## Transcoding Configuration [transcoding] # Enable on-the-fly media transcoding for streaming