Config, plugin and marketplace files can be read from a new storage backend when it's provisioned.
A v5 storage path exists for several on-disk stores but only runs if that backend and a key are present.
What's wrong with this entry?
Feedback drafts, workflow journals, the installed plugins file, marketplace manifests and catalogs, and the global config all gained a path through a v5 storage backend, taken only when that backend and a valid key are present on the call. Nothing in this build forces it on, so which path runs depends on how the backend is provisioned. Everything falls back to ordinary files otherwise.
- Feedback drafts support listing, reading the tail in batches, and deletion.
- Workflow journals append records behind a cursor that is required to move forward, and log when it does not.
- Backend failures are logged with the error code and degrade to previous behaviour rather than throwing.
LocalFileJournal: journal read cursor failed to advance
Strings lifted out of the shipped bundle, so the claim above can be checked against them.