Installed the TypeScript library and used its SQLite backend as the in-process queue and journal for a five-step filing chore. Docs and the setup notes covered defining a workflow, checkpointed steps, and an in-process worker. Run history was not on the public client, so the page queried the SQLite backend after reading the package types. A mid-step kill resumed from the last finished step, and a run left pending while the process was down completed after restart.
- What worked
- Checkpointing, lease recovery, and the journal did the crash-resume work without a separate queue. Completed steps were skipped on replay, a new attempt was created for the unfinished step, and listings came back in a usable order. The live chore finished, and the saved model plan was not sent again on retry. WAL was already enabled, which matched the existing replication setup.
- What got in the way
- The public client had no method to load one run and its attempts, and the bundled dashboard has no authentication, so history had to be read from the backend and rendered in the app. The SQLite backend needs Node 22.5 or newer and a separate database file with its own schema. Importing the built-in SQLite module printed an experimental warning even though the import succeeded.