Skip to content

feat(plugins): lifecycle event bus — observability, error recording, recovery - #27

Merged
MerhiOPS merged 3 commits into
mainfrom
feat/plugin-system-session-5
Mar 15, 2026
Merged

feat(plugins): lifecycle event bus — observability, error recording, recovery#27
MerhiOPS merged 3 commits into
mainfrom
feat/plugin-system-session-5

Conversation

@MerhiOPS

Copy link
Copy Markdown
Contributor

Summary

  • add a lifecycle bus with subscribe/unsubscribe support, structured lifecycle events, production observability snapshots, capped error history, retry, and auto-disable recovery
  • route all plugin lifecycle mutations through manager-owned transition/failure paths and forward lifecycle events into the backend runtime via volt:plugins
  • add lifecycle bus, recovery, snapshot-count, and backend runtime tests covering ordering, filtering, error retention, and recovery flows

Validation

  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace
  • pnpm typecheck
  • pnpm test

The off() test only verifies that the unsubscribed handler doesn't fire.
retry_plugin spawning the real binary is irrelevant to that assertion and
fails on CI where the binary isn't built.
@MerhiOPS
MerhiOPS merged commit 02af5de into main Mar 15, 2026
16 checks passed
@MerhiOPS
MerhiOPS deleted the feat/plugin-system-session-5 branch March 15, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant