Skip to content

Commit cff619f

Browse files
committed
feat(rivetkit): workflows
1 parent 0401db5 commit cff619f

File tree

22 files changed

+5892
-0
lines changed

22 files changed

+5892
-0
lines changed

rivetkit-typescript/packages/workflow-engine/QUICKSTART.md

Lines changed: 428 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## ephemeral-by-default steps
2+
3+
- make steps ephemeral by default
4+
- add helper fns for things like fetch, clients, etc that auto-flag a step as required to be durable
5+
- can also opt-in to flag a step as durable
6+
7+
## rollback
8+
9+
- support rollback steps
10+
11+
## misc
12+
13+
- remove workflow state in favor of actor state
14+
15+
## types
16+
17+
- generic signals
18+

rivetkit-typescript/packages/workflow-engine/architecture.md

Lines changed: 459 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"name": "@rivetkit/workflow-engine",
3+
"version": "0.0.1",
4+
"description": "Durable workflow engine with reentrant execution",
5+
"license": "Apache-2.0",
6+
"keywords": [
7+
"workflow",
8+
"durable",
9+
"reentrant",
10+
"stateful"
11+
],
12+
"files": [
13+
"dist",
14+
"src",
15+
"schemas",
16+
"package.json"
17+
],
18+
"type": "module",
19+
"exports": {
20+
".": {
21+
"import": {
22+
"types": "./dist/tsup/index.d.ts",
23+
"default": "./dist/tsup/index.js"
24+
},
25+
"require": {
26+
"types": "./dist/tsup/index.d.cts",
27+
"default": "./dist/tsup/index.cjs"
28+
}
29+
},
30+
"./testing": {
31+
"import": {
32+
"types": "./dist/tsup/testing.d.ts",
33+
"default": "./dist/tsup/testing.js"
34+
},
35+
"require": {
36+
"types": "./dist/tsup/testing.d.cts",
37+
"default": "./dist/tsup/testing.cjs"
38+
}
39+
}
40+
},
41+
"engines": {
42+
"node": ">=18.0.0"
43+
},
44+
"scripts": {
45+
"build": "pnpm run compile:bare && tsup src/index.ts src/testing.ts",
46+
"compile:bare": "tsx scripts/compile-bare.ts compile schemas/v1.bare -o dist/schemas/v1.ts",
47+
"check-types": "tsc --noEmit",
48+
"lint": "biome check .",
49+
"lint:fix": "biome check --write .",
50+
"test": "vitest run",
51+
"test:watch": "vitest"
52+
},
53+
"dependencies": {
54+
"@rivetkit/bare-ts": "^0.6.2",
55+
"cbor-x": "^1.6.0",
56+
"fdb-tuple": "^1.0.0",
57+
"vbare": "^0.0.4"
58+
},
59+
"devDependencies": {
60+
"@bare-ts/tools": "^0.13.0",
61+
"commander": "^12.0.0",
62+
"tsx": "^4.7.0",
63+
"@biomejs/biome": "^2.2.3",
64+
"@types/node": "^22.13.1",
65+
"tsup": "^8.4.0",
66+
"typescript": "^5.7.3",
67+
"vitest": "^3.1.1"
68+
}
69+
}

0 commit comments

Comments
 (0)