Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
37 KiB
@workflow/world-postgres
4.1.5
Patch Changes
-
#2012
326d93aThanks @pranaygp! - Expose the active run ID on hook token conflict errors. -
#2246
c74e5a3Thanks @ctgowrie! - Update@vercel/queuefrom 0.1.7 to 0.2.1 -
#2302
b93a071Thanks @pranaygp! - Update vulnerable package dependencies to patched releases. -
#2255
c8c8ec1Thanks @ctgowrie! - Update @vercel/queue from 0.2.1 to 0.3.0 -
#1799
eca3b51Thanks @TooTallNate! - Use inline sourcemaps for all workspace packages; published packages no longer ship external.js.mapfiles. -
Updated dependencies [
a84a293,326d93a,95b3477,c74e5a3,b385a2d,c8c8ec1,eca3b51]:- @workflow/world-local@4.1.5
- @workflow/errors@4.1.4
- @workflow/world@4.1.5
- @workflow/utils@4.1.3
4.1.4
Patch Changes
- Updated dependencies [
5a0ce9a,5fd7d9c]:- @workflow/world@4.1.4
- @workflow/errors@4.1.3
- @workflow/world-local@4.1.4
4.1.3
Patch Changes
- Updated dependencies [
8ab6c4f,2aecfdb]:- @workflow/world@4.1.3
- @workflow/world-local@4.1.3
- @workflow/errors@4.1.2
4.1.2
Patch Changes
-
#2029
a434184Thanks @pranaygp! - Refresh workflow events after completing elapsed waits so concurrent hook events preserve deterministic replay order. -
#2069
096adbfThanks @pranaygp! - Fix race inevents.create()where concurrentstep_created/hook_created/wait_createdwrites with the samecorrelationIdwould persist duplicate event rows. Adds a unique partial index and surfaces the violation asEntityConflictError. -
#2019
be506ccThanks @VaguelySerious! -workflow-postgres-setupnow also bootstraps thegraphile_workerschema, fixing potential race on setup when starting the app and a test runner at the same time -
Updated dependencies [
a434184,8407c1e,15e44b3,c347509,ca5f355,76352f0,16f2c23,e428cdb,5f50bbc]:- @workflow/world@4.1.2
- @workflow/world-local@4.1.2
- @workflow/errors@4.1.2
- @workflow/utils@4.1.2
4.1.1
Patch Changes
-
#1726
6f48e9eThanks @workflow-devkit-release-bot! - Embed source content in published sourcemaps. -
2ece7baThanks @VaguelySerious! - Fix community world E2E tests by addingspecVersionto the World interface sostart()uses the safe baseline (v2) for worlds that don't declare their supported version -
Updated dependencies [
5bc4191,6f48e9e,2ece7ba]:- @workflow/world-local@4.1.1
- @workflow/errors@4.1.1
- @workflow/utils@4.1.1
- @workflow/world@4.1.1
4.1.0
Patch Changes
-
#1640
8890b33Thanks @VaguelySerious! - Stable release -
Updated dependencies [
8890b33]:- @workflow/errors@4.1.0
- @workflow/utils@4.1.0
- @workflow/world@4.1.0
- @workflow/world-local@4.1.0
4.1.0-beta.52
Patch Changes
- Updated dependencies [
b30b0dc]:- @workflow/world@4.1.0-beta.16
- @workflow/world-local@4.1.0-beta.50
- @workflow/errors@4.1.0-beta.20
4.1.0-beta.51
Patch Changes
-
#1588
ef2218aThanks @VaguelySerious! - Fix zod v3/v4 schema mismatch crash (keyValidator._parse is not a function) by using consistentzod/v4imports in queue files that consume v4-native schemas from@workflow/world -
Updated dependencies [
ef2218a]:- @workflow/world-local@4.1.0-beta.49
4.1.0-beta.50
Patch Changes
-
#1569
a98f8deThanks @VaguelySerious! - Combine initial run fetch, event fetch, and run_started event creation -
#1534
329cdb3Thanks @VaguelySerious! - Re-enqueue active runs on world restart so inflight runs resume instead of getting stuck -
Updated dependencies [
a98f8de,6dc1b78,329cdb3]:- @workflow/world@4.1.0-beta.15
- @workflow/world-local@4.1.0-beta.48
- @workflow/errors@4.1.0-beta.20
4.1.0-beta.49
Patch Changes
- Updated dependencies [
bd1f7e4]:- @workflow/world-local@4.1.0-beta.47
4.1.0-beta.48
Patch Changes
-
#1523
d1391e1Thanks @pranaygp! - Fix race condition allowing duplicatehook_disposedevents for the same hook -
#1527
e045b59Thanks @NathanColosimo! - Add maxPoolSize configuration -
Updated dependencies [
d1391e1]:- @workflow/world-local@4.1.0-beta.46
4.1.0-beta.47
Patch Changes
-
#1434
d428d66Thanks @pranaygp! - Fix race condition instep_startedthat could corrupt the event log. TheUPDATEforstep_startednow includes a conditional guard (status NOT IN ('completed', 'failed', 'cancelled')) to prevent a concurrent step execution from reverting a completed step back to running. Also adds terminal-state guards tostep_retrying,run_completed,run_failed, andrun_cancelled, and addscancelledto the existing guards onstep_completedandstep_failed. -
#1484
5502438Thanks @jlalmes! - Replacepostgres(postgres.js) withpg(node-postgres) for Drizzle and Graphile Worker. Add optionalpooloncreateWorldto share apg.Pool; when provided -
#1460
78f1b0eThanks @VaguelySerious! - Support negativestartIndexfor streaming (e.g.-3reads last 3 chunks) -
#1342
aee035fThanks @pranaygp! - Replace HTTP status code checks with semantic error types (EntityConflictError, RunExpiredError, ThrottleError, TooEarlyError). BREAKING CHANGE:WorkflowAPIErrorrenamed toWorkflowWorldError. -
#1470
01bbe66Thanks @VaguelySerious! - AddgetStreamChunks()andgetStreamInfo()to the Streamer interface, andgetTailIndex()to the readable stream returned byrun.getReadable().WorkflowChatTransportnow reads thex-workflow-stream-tail-indexresponse header to resolve negativeinitialStartIndexvalues into absolute positions, fixing reconnection retries after a disconnect. -
Updated dependencies [
73a851a,84599b7,2ef33d2,d428d66,672d919,beccbc4,78f1b0e,aee035f,01bbe66]:- @workflow/errors@4.1.0-beta.19
- @workflow/world-local@4.1.0-beta.45
- @workflow/world@4.1.0-beta.14
4.1.0-beta.46
Patch Changes
-
#1417
02ea057Thanks @NathanColosimo! - Remove the unused world-local queue executor API and clean up postgres queue tests. -
#1417
02ea057Thanks @NathanColosimo! - Fix world-postgres queue execution to use workflow HTTP routes instead of in-process handlers. -
#1364
94c14c7Thanks @karthikscale3! - Strip only ref/payload fields from eventData when resolveData is 'none', preserving all other metadata -
Updated dependencies [
02ea057,2f0772d,0f07403,94c14c7]:- @workflow/world-local@4.1.0-beta.44
- @workflow/world@4.1.0-beta.13
- @workflow/errors@4.1.0-beta.18
4.1.0-beta.45
Patch Changes
- Updated dependencies [
9feebee]:- @workflow/world-local@4.1.0-beta.43
4.1.0-beta.44
Patch Changes
-
#1334
3648109Thanks @NathanColosimo! - Execute Graphile jobs inline and durably reschedule delayed queue work. -
Updated dependencies [
825417a,3648109]:- @workflow/world@4.1.0-beta.12
- @workflow/world-local@4.1.0-beta.42
- @workflow/errors@4.1.0-beta.18
4.1.0-beta.43
Patch Changes
- Updated dependencies [
4a6ddd8]:- @workflow/world-local@4.1.0-beta.41
4.1.0-beta.42
Patch Changes
-
#1287
d8daa2aThanks @VaguelySerious! - Addworld.events.get(runId, eventId)to the Storage interface for fetching a single event by ID. -
Updated dependencies [
d8daa2a]:- @workflow/world@4.1.0-beta.11
- @workflow/world-local@4.1.0-beta.40
- @workflow/errors@4.1.0-beta.18
4.1.0-beta.41
Patch Changes
- Updated dependencies [
8b5a388]:- @workflow/world-local@4.1.0-beta.39
4.1.0-beta.40
Patch Changes
-
#1273
11dcb64Thanks @VaguelySerious! - Locally validate run ID to be ULID when passed by user -
Updated dependencies [
456c1aa,11dcb64]:- @workflow/world-local@4.1.0-beta.38
- @workflow/world@4.1.0-beta.10
- @workflow/errors@4.1.0-beta.18
4.1.0-beta.39
Patch Changes
-
#1270
adfe8b6Thanks @pranaygp! - AddHookNotFoundErrorto@workflow/errorsand adopt it across all world backends -
#1270
adfe8b6Thanks @pranaygp! - Prevent hooks from being resumed via the public webhook endpoint by default. AddisWebhookoption tocreateHook()to opt-in to public resumption.createWebhook()always setsisWebhook: true. -
#1275
02f706fThanks @TooTallNate! - Fixhooks.list()default sort order to ascending (creation order) in world-local and world-postgres, matching world-vercel behavior. Also fix world-postgreshooks.list()to respect thesortOrderpagination parameter instead of hardcoding descending order. -
Updated dependencies [
adfe8b6,adfe8b6,02f706f]:- @workflow/errors@4.1.0-beta.18
- @workflow/world-local@4.1.0-beta.37
- @workflow/world@4.1.0-beta.9
4.1.0-beta.38
Patch Changes
-
#1217
e55c636Thanks @pranaygp! - Upgrade dependencies across all packages -
Updated dependencies [
1cfb8b1,e55c636]:- @workflow/world-local@4.1.0-beta.36
- @workflow/world@4.1.0-beta.8
- @workflow/errors@4.1.0-beta.17
4.1.0-beta.37
Patch Changes
-
#1002
0735b2aThanks @rovo89! - Fix racing conditions in Postgres streamer -
#1171
79a730aThanks @rovo89! - Hide also "info" logs from Graphile Worker by default -
#1124
1f9a67cThanks @kschmelter13! - Replace queuepg-boss-based implementation withgraphile-worker -
Updated dependencies [
b06e491]:- @workflow/world@4.1.0-beta.7
- @workflow/errors@4.1.0-beta.16
- @workflow/world-local@4.1.0-beta.35
4.1.0-beta.36
Patch Changes
- Updated dependencies [
b65bb07]:- @workflow/world@4.1.0-beta.6
- @workflow/errors@4.1.0-beta.16
- @workflow/world-local@4.1.0-beta.34
4.1.0-beta.35
Patch Changes
-
#1057
5e06a7cThanks @pranaygp! - Materialize waits as entities to prevent duplicate wait_completed events@workflow/core: Handle 409 conflict gracefully when creating wait_completed events, preventing crashes when multiple concurrent invocations race to complete the same wait@workflow/world: AddWaittype,WaitSchema, andWaitStatusSchemaexports; add optionalwaitfield toEventResult@workflow/world-local: Materialize wait entities on wait_created/wait_completed with duplicate detection; clean up waits on terminal run states@workflow/world-postgres: Addworkflow_waitstable withwait_statusenum; materialize wait entities with conditional writes for duplicate prevention; clean up waits on terminal run states
-
#1081
5487983Thanks @TooTallNate! - ImplementWorld.close()to stop PgBoss and close the postgres connection pool so the process can exit cleanly -
Updated dependencies [
c2b4fe9,6e72b29,5e06a7c,5487983,5487983]:- @workflow/errors@4.1.0-beta.16
- @workflow/world@4.1.0-beta.5
- @workflow/world-local@4.1.0-beta.33
4.1.0-beta.34
Patch Changes
- Updated dependencies [
63caf93]:- @workflow/world-local@4.1.0-beta.32
4.1.0-beta.33
Patch Changes
- Updated dependencies [
56f2221]:- @workflow/errors@4.1.0-beta.15
- @workflow/world@4.1.0-beta.4
- @workflow/world-local@4.1.0-beta.31
4.1.0-beta.32
Patch Changes
- Updated dependencies [
d9e9859]:- @workflow/world@4.1.0-beta.3
- @workflow/errors@4.1.0-beta.14
- @workflow/world-local@4.1.0-beta.30
4.1.0-beta.31
Patch Changes
-
#867
c54ba21Thanks @TooTallNate! - Add optionalwriteToStreamMultifunction to the World interface -
#932
088de0aThanks @pranaygp! - Optimize step handler performance and improve server-side validation- Skip initial
world.steps.get()call in step handler (saves one HTTP round-trip) - Add server-side
retryAftervalidation to local and postgres worlds (HTTP 425 when not reached) - Fix HTTP status code for step terminal state: return 409 (Conflict) instead of 410
- Fix race condition: await
step_startedevent before hydration to ensure correct attempt count
- Skip initial
-
Updated dependencies [
0ce46b9,c54ba21,088de0a,088de0a]:- @workflow/world@4.1.0-beta.2
- @workflow/world-local@4.1.0-beta.29
- @workflow/errors@4.1.0-beta.14
4.1.0-beta.30
Minor Changes
- #621
4966b72Thanks @pranaygp! - BREAKING: Storage interface is now read-only; all mutations go throughevents.create()- Remove
cancel,pause,resumefromruns - Remove
create,updatefromruns,steps,hooks - Add run lifecycle events:
run_created,run_started,run_completed,run_failed,run_cancelled - Add
step_createdevent type - Remove
fatalfield fromstep_failed(terminal failure is now implicit) - Add
step_retryingevent with error info for retriable failures
- Remove
Patch Changes
-
#621
4966b72Thanks @pranaygp! - Add backwards compatibility for runs created with different spec versions- Add
RunNotSupportedErrorfor runs requiring newer world versions - Add semver-based version comparison utilities
- Legacy runs (< 4.1): route to legacy handlers
run_cancelled: skip event storage, directly update runwait_completed: store event only (no entity mutation)- Unknown legacy events: throw error
- Add
-
#853
1060f9dThanks @TooTallNate! - BREAKING CHANGE: Change user input/output to be binary data (Uint8Array) at the World interfaceThis is part of specVersion 2 changes where serialization of workflow and step data uses binary format instead of JSON arrays. This allows the workflow client to be fully responsible for the data serialization format and enables future enhancements such as encryption and compression without the World implementation needing to care about the underlying data representation.
-
#621
4966b72Thanks @pranaygp! - Remove deprecatedworkflow_completed,workflow_failed, andworkflow_startedevents in favor ofrun_completed,run_failed, andrun_startedevents. -
#621
4966b72Thanks @pranaygp! - AddspecVersionproperty to World interface- All worlds expose
@workflow/worldpackage version for protocol compatibility - Stored in
run_createdevent andWorkflowRunschema - Displayed in observability UI
- All worlds expose
-
#621
4966b72Thanks @pranaygp! - Implement event-sourced entity creation inevents.create()- Atomically create run/step/hook entities when processing corresponding events
- Return
hook_conflictevent when hook token already exists - Add
spec_versioncolumn to runs table
-
Updated dependencies [
4966b72,4966b72,4966b72,1060f9d,4966b72,4966b72,57f6376,60a9b76,4966b72]:- @workflow/world@4.1.0-beta.1
- @workflow/world-local@4.1.0-beta.28
- @workflow/errors@4.1.0-beta.14
4.1.0-beta.29
Patch Changes
-
#804
1533dbbThanks @lcneves! - Delete redundant and bugged Drizzle migration -
Updated dependencies [
202c524,5ba82ec,b05dbd7]:- @workflow/world-local@4.0.1-beta.27
4.1.0-beta.28
Patch Changes
- Updated dependencies [
61fdb41,0aa835f]:- @workflow/world@4.0.1-beta.13
- @workflow/errors@4.0.1-beta.13
- @workflow/world-local@4.0.1-beta.26
4.1.0-beta.27
Patch Changes
- Updated dependencies [
dd3db13]:- @workflow/world@4.0.1-beta.12
- @workflow/world-local@4.0.1-beta.25
- @workflow/errors@4.0.1-beta.13
4.1.0-beta.26
Patch Changes
- Updated dependencies []:
- @workflow/errors@4.0.1-beta.13
- @workflow/world-local@4.0.1-beta.24
4.1.0-beta.25
Patch Changes
- Updated dependencies [
2dbe494]:- @workflow/world-local@4.0.1-beta.23
4.1.0-beta.24
Patch Changes
-
#455
e3f0390Thanks @karthikscale3! - Added Control Flow Graph extraction from Workflows and extended manifest.json's schema to incorporate the graph structure into it. Refactored manifest generation to pass manifest as a parameter instead of using instance state. Add e2e tests for manifest validation across all builders. -
Updated dependencies [
e3f0390]:- @workflow/world-local@4.0.1-beta.22
- @workflow/world@4.0.1-beta.11
- @workflow/errors@4.0.1-beta.12
4.1.0-beta.23
Patch Changes
- Updated dependencies [
d9f6a49,c3464bf]:- @workflow/world-local@4.0.1-beta.21
- @workflow/errors@4.0.1-beta.11
4.1.0-beta.22
Patch Changes
- Updated dependencies [
f2d5997]:- @workflow/world-local@4.0.1-beta.20
4.1.0-beta.21
Patch Changes
-
#625
712f6f8Thanks @VaguelySerious! - List implicitly passed streams forworld.listStreamsByRun -
Updated dependencies [
ce7d428,712f6f8,4bdd3e5]:- @workflow/world-local@4.0.1-beta.19
- @workflow/errors@4.0.1-beta.10
4.1.0-beta.20
Patch Changes
- Updated dependencies [
b56aae3]:- @workflow/errors@4.0.1-beta.9
- @workflow/world-local@4.0.1-beta.18
4.1.0-beta.19
Patch Changes
- Updated dependencies [
c9b8d84]:- @workflow/world-local@4.0.1-beta.17
- @workflow/errors@4.0.1-beta.8
4.1.0-beta.18
Patch Changes
-
#574
c82b467Thanks @VaguelySerious! - Add listByRunId endpoint to Streamer interface -
Updated dependencies [
d42a968,c82b467]:- @workflow/world-local@4.0.1-beta.16
- @workflow/world@4.0.1-beta.10
- @workflow/errors@4.0.1-beta.7
4.1.0-beta.17
Patch Changes
- Updated dependencies [
48b3a12] - Updated dependencies [
57a2c32]- @workflow/world-local@4.0.1-beta.15
- @workflow/world@4.0.1-beta.9
- @workflow/errors@4.0.1-beta.7
4.1.0-beta.16
Patch Changes
ef8e0e5: Increase polling interval for pg-boss to reduce interval between steps8d4562e: Rename leftover references to "embedded world" to be "local world"- Updated dependencies [
6e8e828] - Updated dependencies [
10c5b91] - Updated dependencies [
bdde1bd] - Updated dependencies [
2faddf3] - Updated dependencies [
8d4562e]- @workflow/world-local@4.0.1-beta.14
- @workflow/world@4.0.1-beta.8
- @workflow/errors@4.0.1-beta.7
4.1.0-beta.15
Patch Changes
- Updated dependencies [
fb9fd0f] - Updated dependencies [
40057db]- @workflow/world@4.0.1-beta.7
- @workflow/world-local@4.0.1-beta.13
- @workflow/errors@4.0.1-beta.6
4.1.0-beta.14
Patch Changes
- Updated dependencies [
edb69c3]- @workflow/world-local@4.0.1-beta.12
- @workflow/errors@4.0.1-beta.6
4.1.0-beta.13
Patch Changes
- Updated dependencies [
3436629]- @workflow/world-local@4.0.1-beta.11
4.1.0-beta.12
Patch Changes
3d99d6d: Update@vercel/oidcand@vercel/queueto fix expired OIDC token edge case- Updated dependencies [
3d99d6d]- @workflow/world-local@5.0.0-beta.10
4.1.0-beta.11
Patch Changes
4b70739: Require specifying runId when writing to stream- Updated dependencies [
4b70739]- @workflow/world-local@5.0.0-beta.9
- @workflow/world@4.0.1-beta.6
- @workflow/errors@4.0.1-beta.5
4.1.0-beta.10
Patch Changes
5790cb2: Use drizzle migratorb97b6bf: Lock all dependencies in our packages00b0bb9: Support structured errors for steps and runsa6f5545: Update migration and parse data through schemas79480f2: Clean up Hook entities after a workflow run has completed- Updated dependencies [
aa015af] - Updated dependencies [
00b0bb9] - Updated dependencies [
b97b6bf] - Updated dependencies [
00b0bb9] - Updated dependencies [
00b0bb9] - Updated dependencies [
79480f2]- @workflow/world-local@5.0.0-beta.8
- @workflow/errors@4.0.1-beta.5
- @workflow/world@4.0.1-beta.5
4.1.0-beta.9
Patch Changes
4.1.0-beta.8
Patch Changes
- Updated dependencies [
adf0cfe]- @workflow/world-local@4.0.1-beta.6
- @workflow/errors@4.0.1-beta.4
4.1.0-beta.7
Patch Changes
8a82ec5: Bug fixes and test coverage for Storage.ts in Postgres World
4.1.0-beta.6
Patch Changes
- Updated dependencies [
05714f7]- @workflow/world-local@4.0.1-beta.5
4.1.0-beta.5
Patch Changes
f973954: Update license to Apache 2.0- Updated dependencies [
10309c3] - Updated dependencies [
f973954]- @workflow/world-local@4.0.1-beta.4
- @workflow/errors@4.0.1-beta.3
- @workflow/world@4.0.1-beta.4
4.1.0-beta.4
Minor Changes
3dd25de: Exported the database schema and added a script for initializing the database with all the required tables for the setup.
Patch Changes
20d51f0: Add optionalretryAfterproperty toStepinterface- Updated dependencies [
796fafd] - Updated dependencies [
20d51f0] - Updated dependencies [
20d51f0] - Updated dependencies [
70be894]- @workflow/errors@4.0.1-beta.2
- @workflow/world-local@4.0.1-beta.3
- @workflow/world@4.0.1-beta.3
4.0.1-beta.3
Patch Changes
ae0972f: Fix build script to include the built files
4.0.1-beta.2
Patch Changes
7868434: RemoveAuthProviderinterface fromWorldand associated implementations- Updated dependencies [
d3a4ed3] - Updated dependencies [
d3a4ed3] - Updated dependencies [
66225bf] - Updated dependencies [
7868434]- @workflow/world@4.0.1-beta.2
- @workflow/world-local@4.0.1-beta.2
4.0.1-beta.1
Patch Changes
- e46294f: Add "license" and "repository" fields to
package.jsonfile - Updated dependencies [1408293]
- Updated dependencies [8422a32]
- Updated dependencies [e46294f]
- @workflow/world-local@4.0.1-beta.1
- @workflow/errors@4.0.1-beta.1
- @workflow/world@4.0.1-beta.1
4.0.1-beta.0
Patch Changes
- fcf63d0: Initial publish
- Updated dependencies [fcf63d0]
- @workflow/world-local@4.0.1-beta.0
- @workflow/errors@4.0.1-beta.0
- @workflow/world@4.0.1-beta.0