-
Notifications
You must be signed in to change notification settings - Fork 8.5k
Closed
Description
Step 1 - Remove dependency on public saved objects HTTP APIs
- Remove client side use of SavedObjectsClientContract.
- Update useResolver
This is already planned with the follow work from 149459 where we will use the saved search plugin's shared functions. - Update useDashboardService, does dashboard plugin share something we can use?
- Remove from the dependency cache, and update all places where it is being used.
- Custom URL builder, specifically links to dashboards.
- Data recogniser UI (checkForSavedObjects)
- Index utils, used to load saved searches.
- Update useResolver
Step 2 - HTTP API interfaces must not implicitly include your SO-attribs
- The ML saved object attributes are described by these types.
These defined and used only on the server side.
Step 3 - HTTP APIs have strict input validation
We have 19 routes which have validation disabled validate: false.
- We need to audit these 19 routes to confirm that no validation is necessary.
DONE - see [ML] [META] Audit routes with no validation #158831
Step 4 - Keep HTTP APIs interfaces as “narrow” as possible
I can't see us updating any existing endpoints to narrow down interfaces. Our endpoints are pretty specific as it is, so I don't think this will cause us any problems.
Step 5 - Every saved object type must use the new registerType API which will have a modelVersion and up/down transforms**
- Update all uses of
registerTypeto include model version and up/down transforms. (this may get done for us)
Step 6 - Adopt the Elastic serverless HTTP API specification
Version APIs for each of the plugins owned by the ml team:
- ml [ML] Versioning all ML APIs #156949
- transform [ML] Versioning transforms APIs #158273
- file_upload [ML] Versioning file upload APIs #158265
- aiops [ML] Versioning AIOps APIs #158806
[ ] data_visualizer (does not define any endpoints)