Align external plugin trigger capability and metadata docs#317
Conversation
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Previously Reported Issues
Files Reviewed (2 files)
Reviewed by kimi-k2.6-20260420 · 1,179,130 tokens |
8e1bc6c to
1de4aad
Compare
| "table_name": "users", | ||
| "event": "INSERT OR UPDATE", | ||
| "timing": "AFTER", | ||
| "schema": "public" |
There was a problem hiding this comment.
WARNING: get_triggers result field mismatch — the runtime TriggerInfo struct uses definition (optional string), not schema.
The backend and frontend models expect { name, table_name, event, timing, definition? }. Plugin authors returning schema here will have the field ignored, and omitting definition is fine when the driver provides it via get_trigger_definition instead.
| "schema": "public" | |
| "definition": null |
1de4aad to
06f79a8
Compare
|
Thanks for the follow-up! Since this documents trigger RPCs and a Do you plan to open a PR for the trigger RPC forwarding (and the splitter changes)? If that's coming soon, we can simply keep this one open and merge it right after that lands. Otherwise, I'd suggest extracting the |
|
Thanks, that sequencing makes sense to me. I'll keep this PR open for now rather than extracting the
That should avoid merging guide/schema text ahead of runtime support, while keeping this PR as the docs/schema alignment companion once the runtime pieces land. |
Summary
Follow-up to #316.
This aligns the external plugin manifest schema and plugin guide with the current runtime model:
capabilities.triggerstoplugins/manifest.schema.jsoncapabilities.sql_dialectto the manifest schema and document the supported splitter dialect valuesPLUGIN_GUIDE.mdget_columnsexample to use the current runtime field names:default_valueandis_pkNotes
This PR intentionally does not implement trigger RPC forwarding or splitter behavior changes for external plugins. Runtime forwarding and Oracle-like block splitting will be handled separately so this schema/docs alignment remains low-risk and reviewable.
Validation
python3 -m json.tool plugins/manifest.schema.jsonpnpm run typecheckpnpm run lint(passes with one existing warning insrc/components/settings/LocalizationTab.tsx)