You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: route separator bug, stale docs, integration test regression
- Fix missing '/' between api_prefix and route pattern in
PluginManager::register_routes (produced /api/v1apps/... instead
of /api/v1/apps/...)
- Fix integration test expecting plaintext 'pong' after demo plugin
was changed to return JSON
- Update plugin-system.rst, server.rst, troubleshooting.rst, and
linux_introspection design doc to reference new get_routes() API
instead of removed register_routes()
- Update documented API version from 4 to 5
- Remove dead code get_all_route_info() (zero callers)
- Add unit test verifying PluginManager route wrapping end-to-end
- ``register_capability()`` / ``register_entity_capability()`` - register custom capabilities on entities
245
+
246
+
.. note::
247
+
248
+
SOVD-compliant HTTP response helpers (``send_json()``, ``send_error()``) are instance
249
+
methods on ``PluginResponse``, not static methods on ``PluginContext``. Use
250
+
``res.send_json(data)`` and ``res.send_error(status, code, msg)`` inside route handlers.
251
+
247
252
- ``check_lock(entity_id, client_id, collection)`` - verify lock access before mutating operations; returns ``LockAccessResult`` with ``allowed`` flag and denial details
248
253
- ``acquire_lock()`` / ``release_lock()`` - acquire and release entity locks with optional scope and TTL
249
254
- ``get_entity_snapshot()`` - returns an ``IntrospectionInput`` populated from the current entity cache
@@ -302,10 +307,10 @@ for the lower-level registry API.
302
307
still required because ``plugin_api_version()`` must return the current version
303
308
(exact-match check).
304
309
305
-
PluginContext API (v4)
310
+
PluginContext API (v5)
306
311
----------------------
307
312
308
-
Version 4 of the plugin API introduced several new methods on ``PluginContext``.
313
+
Version 5 of the plugin API introduced several new methods on ``PluginContext``.
309
314
These methods have default no-op implementations, so existing plugins continue to
310
315
compile without changes (though a rebuild is required to match the new
311
316
``PLUGIN_API_VERSION``).
@@ -320,7 +325,7 @@ should call this before proceeding:
320
325
321
326
auto result = ctx_->check_lock(entity_id, client_id, "configurations");
0 commit comments