Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
7867dee
feat: add Effect SDK API design proposal
IGassmann Apr 23, 2026
1a6bf5e
refactor(effect): inline MAX_COUNT constant with value 20
IGassmann Apr 23, 2026
63c4938
refactor(effect): rename CounterOverflow to CounterOverflowError
IGassmann Apr 23, 2026
9f0b542
refactor: embed actions in actor definition
IGassmann Apr 23, 2026
2810003
refactor(effect): rename action input to payload
IGassmann Apr 23, 2026
9a337a5
docs(effect): document rationale for explicit action schemas
IGassmann Apr 23, 2026
c4f0938
style(effect): reformat Counter.ts to use tabs instead of spaces
IGassmann Apr 23, 2026
80b070c
docs(effect): document benefits of context-based actor services
IGassmann Apr 23, 2026
9c33d72
refactor(effect): move error declaration closer to actor definition
IGassmann Apr 23, 2026
fddf524
feat(effect): add options to Counter actor definition for name and icon
IGassmann Apr 23, 2026
f544e67
style(effect): reformat Counter.ts event block for consistency
IGassmann Apr 23, 2026
9947347
docs(effect): remove contract separation from schema rationale
IGassmann Apr 23, 2026
dc6370f
refactor(effect): migrate API design to Effect v4
IGassmann Apr 23, 2026
dec23f0
refactor(effect): switch to standalone first-class actions
IGassmann Apr 24, 2026
14b456a
feat(effect): add temporary variable example
IGassmann Apr 24, 2026
feba11f
refactor(effect): clarify toLayer body as wake scope with sleep final…
IGassmann Apr 24, 2026
fc08555
refactor(effect): split Counter actor into per-actor directory with a…
IGassmann Apr 24, 2026
6ee630c
refactor(effect): simplify finalizer to plain sleep log
IGassmann Apr 24, 2026
42f2040
refactor(effect): use shared Actor.Kv/Db tags instead of per-actor Co…
IGassmann Apr 26, 2026
0f60509
docs(effect): update README to reflect split Counter actor files
IGassmann Apr 26, 2026
a3751f5
feat(effect): add durable message queue processing to Counter actor
IGassmann Apr 26, 2026
7dbc608
style(effect): fix indentation to tabs in client.ts and main.ts
IGassmann Apr 26, 2026
9cc41bc
fix(effect): use Schema.Struct for Reset message payload
IGassmann Apr 27, 2026
636f333
refactor(effect): remove onConnect hook referencing undeclared event
IGassmann Apr 27, 2026
4e0fc76
feat(effect): use withConstructorDefault for state initialization
IGassmann Apr 27, 2026
aa63fee
feat(effect): add queue size limits to Counter actor options
IGassmann Apr 27, 2026
55a9cd1
feat(effect): use PersistedSubscriptionRef for actor state
IGassmann Apr 27, 2026
aa6daeb
feat(effect): scaffold @rivetkit/effect package
IGassmann Apr 27, 2026
b4eca9e
chore(effect): remove version and stableVersion from example
IGassmann Apr 27, 2026
011d1d8
chore(effect): remove unused template metadata from example
IGassmann Apr 27, 2026
4646558
chore(effect): run example with tsx directly instead of srvx
IGassmann Apr 27, 2026
ce3e39d
docs(effect): use relative paths for example file links
IGassmann Apr 27, 2026
cbe28a7
chore(effect): align tsconfig with rivetkit/workflow-engine
IGassmann Apr 27, 2026
7d2840a
chore(effect): align package.json with rivetkit conventions
IGassmann Apr 27, 2026
cd5a222
chore(effect): use caret range for effect dependency
IGassmann Apr 27, 2026
8c6fb38
chore(effect): bump typescript to ^5.9.2
IGassmann Apr 27, 2026
874fcf0
chore(effect): fix import path in tsup config
IGassmann Apr 27, 2026
ca70ed3
chore(effect): add vitest for testing and include test files in tsconfig
IGassmann Apr 27, 2026
d84f281
chore(effect): enable verbatimModuleSyntax and add @effect/language-s…
IGassmann Apr 27, 2026
4480032
chore(effect): drop @types/node to keep types runtime-agnostic
IGassmann Apr 27, 2026
145cdb4
chore(effect): add vitest config extending workspace base
IGassmann Apr 27, 2026
0bc65f3
docs(effect): remove outdated README API design proposal
IGassmann Apr 27, 2026
ce79b9b
chore(effect): wire up persistent turbo dev task for example workflow
IGassmann Apr 27, 2026
76b66bc
chore(effect): use workspace deps so turbo sees the example's graph
IGassmann Apr 27, 2026
1ac8dfe
feat(effect): add Action module with schema-driven action definitions
IGassmann Apr 27, 2026
136d5b5
docs(effect): use shorthand payload fields in counter example
IGassmann Apr 28, 2026
f0be883
feat(effect): add Message module with completable and fire-and-forget…
IGassmann Apr 28, 2026
7b9c212
refactor(effect): drop per-action defect schema from Action
IGassmann Apr 28, 2026
72b191f
feat(effect): add Actor contract module
IGassmann Apr 28, 2026
18c645f
refactor(effect): rename actor transport to client
IGassmann Apr 28, 2026
641b17d
refactor(effect): scope contract keys under @rivetkit/effect
IGassmann Apr 28, 2026
667e257
refactor(effect): remove actor annotations
IGassmann Apr 28, 2026
df7c392
feat(effect): add type guards for Action, Message, and Actor
IGassmann Apr 28, 2026
2ddffd7
refactor(effect): simplify Message key assignment
IGassmann Apr 28, 2026
5eb9668
refactor(effect): simplify Action interface documentation
IGassmann Apr 28, 2026
bf8d278
feat(effect): extend counter example with ClientError type
IGassmann Apr 28, 2026
a7d29dd
refactor(effect): drop unused Pipeable from Action
IGassmann Apr 29, 2026
81cd9c5
refactor(effect): drop function-as-instance carrier from Action
IGassmann Apr 29, 2026
7640c0b
refactor(effect): drop unused Pipeable from Message and Actor
IGassmann Apr 29, 2026
0f3ce01
refactor(effect): drop redundant construct signature from Message
IGassmann Apr 29, 2026
c4e25aa
feat(effect): scope SDK v1 to actions only
IGassmann Apr 30, 2026
d34b7e1
refactor(effect): drop AbortSignal-based call cancellation
IGassmann Apr 30, 2026
b688ea7
refactor(effect): drop get/getForId/create from ActorClient
IGassmann Apr 30, 2026
6c79c14
refactor(effect): drop GetOrCreateOptions and the options arg
IGassmann Apr 30, 2026
f774006
docs(effect): drop per-action middleware mention from counter example
IGassmann Apr 30, 2026
9b2d598
refactor(effect): align Registry/Client options with engine wiring
IGassmann Apr 30, 2026
552d8d6
feat(effect): add fixed RivetError defectSchema to Action
IGassmann Apr 30, 2026
376bf1d
refactor(effect): tighten ActionHandlers R upper bound to unknown
IGassmann Apr 30, 2026
d0f23d0
refactor(effect): collapse ClientError into a single RivetError tagge…
IGassmann Apr 30, 2026
7db0ac7
refactor(effect): split Registry collector from Runner mode layers
IGassmann May 1, 2026
33fb123
feat(effect): implement Registry as Ref-backed actor collector
IGassmann May 1, 2026
1cb585b
feat(effect): wire Runner.start through rivetkit's setup().start()
IGassmann May 1, 2026
54f5cf0
feat(effect): wire per-instance scope and handler dispatch in Runner.…
IGassmann May 1, 2026
5a1dc96
feat(examples/effect): add plain-rivetkit smoke client and self-spawn…
IGassmann May 1, 2026
dce78df
feat(examples/node-client): add minimal actor + plain Node client exa…
IGassmann May 1, 2026
9a172f0
feat(effect): expose Actor.CurrentAddress inside the wake scope
IGassmann May 1, 2026
e10dec6
feat(effect): add Client service and typed-error round-trip via UserE…
IGassmann May 1, 2026
5edd5e6
chore(examples/effect): update start/dev scripts to include RIVET_ENG…
IGassmann May 1, 2026
ddcd09f
feat(examples/effect): add message field to CounterOverflowError
IGassmann May 1, 2026
d01ddb7
refactor(effect): remove unused generic from `Effect.context` call in…
IGassmann May 1, 2026
274ca70
refactor(effect): fuse action dispatch into one Effect, drop codec maps
IGassmann May 1, 2026
6184b18
docs(examples/effect): re-add v0 surface as commented-out scaffolding
IGassmann May 1, 2026
23e7dca
docs(examples/effect): drop redundant client-raw.ts header comment
IGassmann May 1, 2026
5904605
refactor(effect): use namespace imports for rivetkit symbols
IGassmann May 3, 2026
dfacc86
refactor(effect): consolidate effect submodule imports into one line
IGassmann May 3, 2026
7eb6afc
chore(effect): apply biome formatting
IGassmann May 3, 2026
93b4217
refactor(effect): rename native* identifiers to rivetkit*
IGassmann May 3, 2026
26d993c
refactor(effect): rename Address to CurrentAddress
IGassmann May 3, 2026
3cbbcf8
refactor(effect): derive option types from canonical rivetkit shapes
IGassmann May 3, 2026
7981b81
refactor(effect): tighten remaining drift-prone type declarations
IGassmann May 3, 2026
9a4752f
refactor(effect): inline ClientShape
IGassmann May 3, 2026
bc3fbd7
refactor(effect): simplify rivetkitClient initialization
IGassmann May 3, 2026
9a1522e
refactor(effect): remove unused `test` mode from `RunnerShape` and `R…
IGassmann May 3, 2026
fce948a
refactor(effect): remove `runnerNotImplemented` function and unused m…
IGassmann May 3, 2026
65623d9
feat(effect): add `Runner.test` layer with end-to-end example test
IGassmann May 3, 2026
87ecef3
refactor(effect): rename Runner.test.ts to e2e.test.ts
IGassmann May 3, 2026
6a6bdf7
refactor(effect): move e2e Counter fixture into test/fixtures/
IGassmann May 3, 2026
60a8d78
chore(effect): include vitest.config.ts in tsconfig + add @types/node
IGassmann May 3, 2026
baf7b16
refactor(effect): extract hasStringProperty into utils.ts
IGassmann May 3, 2026
cc3bbeb
refactor(effect): inline RegistryShape into Registry declaration
IGassmann May 3, 2026
6e4a04e
refactor(effect): inline RunnerShape into Runner declaration
IGassmann May 3, 2026
35d5799
refactor(effect): dedupe Runner.start/test via toRivetkitRegistry helper
IGassmann May 3, 2026
6990c2d
chore(effect): silence engine logs in test suite
IGassmann May 3, 2026
28ead65
test(effect): cover Date/transform schemas, user services, and multi-…
IGassmann May 3, 2026
7aed57d
fix(effect): propagate auto-spawned engine endpoint to test client
IGassmann May 3, 2026
1628652
test(effect): add todos for build-effect errors, schema services, tra…
IGassmann May 3, 2026
3208f25
test(effect): cover schema codec services across action channels
IGassmann May 4, 2026
843e0d1
test(effect): cover defect inside actor build effect
IGassmann May 4, 2026
63697fd
test(effect): cover unregistered-actor failure shape
IGassmann May 4, 2026
6051e92
feat(effect): propagate Effect tracing spans across actor calls
IGassmann May 4, 2026
9782016
chore(effect): update vitest config to set RIVET_LOG_LEVEL=SILENT for…
IGassmann May 4, 2026
911659a
feat(effect): add `Actor.Sleep` for per-wake sleep requests
IGassmann May 4, 2026
6260dae
refactor(effect): rename `SleepFn` to `Sleep` and update references i…
IGassmann May 4, 2026
c753e91
refactor(effect): simplify state-schema wiring in Actor
IGassmann May 4, 2026
77f62b9
test(effect): improve reliability of e2e actor sleep tests
IGassmann May 5, 2026
86c6e63
refactor(effect): use Counter.State in counter example
IGassmann May 5, 2026
c481d2a
Merge branch 'main' into feat/effect-sdk-design
IGassmann May 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions examples/effect/package.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

75 changes: 75 additions & 0 deletions examples/effect/src/actors/counter/api.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

107 changes: 107 additions & 0 deletions examples/effect/src/actors/counter/live.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions examples/effect/src/actors/mod.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

34 changes: 34 additions & 0 deletions examples/effect/src/client-raw.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

43 changes: 43 additions & 0 deletions examples/effect/src/client.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 23 additions & 0 deletions examples/effect/src/main.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions examples/effect/tsconfig.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions examples/effect/turbo.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions examples/node-client/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

39 changes: 39 additions & 0 deletions examples/node-client/README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading