MVP_DEPLOYED_CURSORS
const MVP_DEPLOYED_CURSORS: readonly CursorStrategy[];The cursor strategies a runtime: deployed source may additionally use.
The cut is not one list, because the two runtimes genuinely differ here and pretending otherwise is what produced a shipped manifest declaring a strategy that exists in no vocabulary.
A DEPLOYED source’s cursor is handed back byte-for-byte: Trove stores it as opaque JSON and the invoke contract requires it reach the adapter unchanged. So a source resuming from a monotonic id — the newest post it saw, and “give me everything after this” — works today, and one does.
A BUNDLED source’s cursor is parsed before it is handed over, and a shape the
Cursor union does not name parses to nothing. The same source
compiled into the cloud runtime would silently start from the beginning on
every run, which is why highWaterId is NOT in MVP and a bundled
source declaring it is refused.
The distinction is worth a second list rather than a footnote: it is the difference between a source that resumes and one that re-reads a metered API from the top, forever, without an error anywhere.