Skip to content

feat(proto-app): add toolbox plugin loading to PluginRegistry#39

Merged
pabloinigoblasco merged 1 commit into
developmentfrom
feat/toolbox-loader
Apr 9, 2026
Merged

feat(proto-app): add toolbox plugin loading to PluginRegistry#39
pabloinigoblasco merged 1 commit into
developmentfrom
feat/toolbox-loader

Conversation

@pabloinigoblasco
Copy link
Copy Markdown
Collaborator

Summary

  • Extend PluginRegistry to discover, load, and hot-reload toolbox plugins alongside data sources and message parsers
  • Add LoadedToolbox struct tracking library handle, path, name, capabilities and modification time
  • Integrate toolbox loading into scanDirectory() and reload() flows (load, unload on removal, reload on mtime change)
  • Add allToolboxes() accessor for downstream consumers
  • Link pj_toolbox_host into pj_proto_app

Test plan

  • Build pj_proto_app and verify no linker errors
  • Place a toolbox .so in the plugin directory and verify it appears in allToolboxes()
  • Modify the .so on disk and call reload() — verify it reloads
  • Remove the .so and call reload() — verify it is unregistered

Extend PluginRegistry to discover, load, and hot-reload toolbox plugins
alongside data sources and message parsers.

Contents:
- Add LoadedToolbox struct (library handle, path, name, capabilities, mtime)
- Add loadAndRegisterToolbox() to scan and load toolbox .so files
- Integrate toolbox loading into scanDirectory() and reload() flows
  (load, unload on removal, reload on mtime change)
- Add allToolboxes() accessor for downstream use
- Link pj_toolbox_host into pj_proto_app
@pabloinigoblasco pabloinigoblasco merged commit fc94fed into development Apr 9, 2026
2 checks passed
pabloinigoblasco added a commit that referenced this pull request Apr 15, 2026
…olbox loader, toolbox gap analysis docs)
pabloinigoblasco added a commit that referenced this pull request Apr 15, 2026
…olbox loader, toolbox gap analysis docs)
@pabloinigoblasco pabloinigoblasco deleted the feat/toolbox-loader branch May 4, 2026 12:36
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