These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | 94f1c92 | |
|---|---|---|
| Author: | mrkaye97 | |
Merge branch 'main' into mk/feat-idempotency
| Commit: | a441554 | |
|---|---|---|
| Author: | mrkaye97 | |
chore: rm unused proto change
The documentation is generated from this commit.
| Commit: | 02f6fd0 | |
|---|---|---|
| Author: | Gabe Ruttner | |
chore order of things
| Commit: | 115306a | |
|---|---|---|
| Author: | Gabe Ruttner | |
comments
| Commit: | e520b06 | |
|---|---|---|
| Author: | Gabe Ruttner | |
refactor: more feedback and clarified naming
| Commit: | e8d2ba7 | |
|---|---|---|
| Author: | Gabe Ruttner | |
ack
| Commit: | a1a84b4 | |
|---|---|---|
| Author: | Gabe Ruttner | |
chore: refactor rate limit stuff
| Commit: | 10301e1 | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: separate stream proto
| Commit: | 91d1343 | |
|---|---|---|
| Author: | Gabe Ruttner | |
chore: easy feedback
| Commit: | 151fd44 | |
|---|---|---|
| Author: | Gabe Ruttner | |
Merge branch 'main' into feat--hatchet-v2-grpc-api
| Commit: | ac147cb | |
|---|---|---|
| Author: | mrkaye97 | |
feat: sql, move some logic over from my old branch
| Commit: | 91549f1 | |
|---|---|---|
| Author: | Gabe Ruttner | |
fix change og
| Commit: | bd482af | |
|---|---|---|
| Author: | Gabe Ruttner | |
Merge branch 'main' into fix--durable-satisfied-callback-order-gurantees
| Commit: | 1963828 | |
|---|---|---|
| Author: | Julius Park | |
Merge branch 'main' into feat--batch-flush-redux
| Commit: | 15addec | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
fix(engine): correctly raise error in durable parent when child fails (#4154) * fix: propagate error back to the sdk * fix: python sdk * feat: add is_failure and error_message to the proto * feat: engine changes for wiring failure flag + error msg through * chore: other sdks * chore: cop * chore: nullif on write * fix: feedback * feat: e2e test * feat: tests * fix: tests * chore: lint * fix: test * chore: gen * chore: changelog sync * chore: lint ugh I hate our ci * fix: add tasks to worker * chore: gen * chore: versions, changelogs * chore: bundle * fix: rework test to fail on cloud * fix: autocomplete :facepalm: * chore: black * chore: gen
The documentation is generated from this commit.
| Commit: | 2e0f991 | |
|---|---|---|
| Author: | Gabe Ruttner | |
fix: track satisfied order
| Commit: | 8d37fa8 | |
|---|---|---|
| Author: | mrkaye97 | |
fix: move graph creation to the engine
| Commit: | f29a397 | |
|---|---|---|
| Author: | mrkaye97 | |
feat: almost working e2e PoC
| Commit: | 552a47e | |
|---|---|---|
| Author: | Gabe Ruttner | |
separate register and stream
| Commit: | ab7d578 | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: proposed protos
| Commit: | 0fb5bf6 | |
|---|---|---|
| Author: | Julius Park | |
add result broadcasting
| Commit: | 0bdfc1c | |
|---|---|---|
| Author: | mrkaye97 | |
chore: vendor the status proto for js
| Commit: | 17e5cbc | |
|---|---|---|
| Author: | Julius Park | |
rename proto fields
| Commit: | 4942ad4 | |
|---|---|---|
| Author: | mrkaye97 | |
feat: wire up existing run ids
| Commit: | 564d867 | |
|---|---|---|
| Author: | Julius Park | |
| Committer: | Julius Park | |
wip merge
| Commit: | 247dd6c | |
|---|---|---|
| Author: | mrkaye97 | |
feat: add ttl col
| Commit: | 09b749e | |
|---|---|---|
| Author: | mrkaye97 | |
feat: add idempotency key expr to proto, workflow version
| Commit: | 5e1fabb | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Fix: Webhook responses, event info on context, internal fix for labels matches (#3625) * feat: add boolean flag for whether or not to return the event as the response payload * feat: add field to indicate whether or not to return the event * fix: wire up receive api * feat: more columns for event trigger idea * feat: start wiring up queries * feat: internal wiring * fix: matches, more wiring * fix: simplify query * fix: more wiring * fix: clean up dag impl for worker labels too * fix: wiring, unwind dag changes * fix: if * feat: add webhook response switch on fe * fix: casing * fix: populator * feat: add fields to assigned action for trigger * feat: send trigger data back over the api to the context * chore: gen py * feat: wire up context in py * feat: update webhooks feature client * feat: ts, go * chore: lint * fix: more wiring for replay * fix: nil handling * chore: gen * chore: attempt to fix flaky test * feat: wire up olap writes * fix: rm changes on the olap side for now * fix: improve the `was_triggered_by_event` prop * chore: gen, fix migration version * chore: versions, changelogs
| Commit: | b39548c | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Durable execution frontend work and API improvements (#3639) * feat: initial work on durable event log ui * feat: use the logging component to show the event log * remove evicted crescent since the hover state was broken and it looked awkward * fix: filter out memo events, change copy * fix: durable event log height * feat: add helper hints for run triggers too * feat: rework wait data * feat: bulk run grouping * fix: or groups, more grouping on fe * feat: simplify api more * fix: get rid of cursor-impl mini map click behavior * feat: start consolidating durable and non-durable event logs * fix: make log level an enum for log component * feat: improve color of different logs, etc * fix: show task display names for dags * refactor: move durable event list to durable events repo, update api to return external ids and display names consistently * fix: swap order of replay / cancel buttons * feat: tabs cleanup for side panel * fix: input, output, additional metadata tab sizes in the side panel * chore: lint * feat: add link to log line * fix: improve copy * chore: lint and gen * feat: label in ts * chore: gen protos * fix: default behavior * chore: versions, changelogs * chore: rm some comments * chore: docs * fix: tests * fix: one more satisfied-now fix * fix: another copilot suggestion * fix: more copilot * fix: pagination * fix: start fixing link clicks * fix: log click overflow logic * Fix: Misc frontend issues (#3633) * fix: event column truncation * feat: add popover for worker labels * fix: memoize table cols * fix: simple table scrolling and padding * fix: lint * fix: dag view * fix: populator type assert * fix: remove duration string helper * fix: durable task ids
| Commit: | d69ef31 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Wait for event with lookback window (#3442) * feat: add scope to proto * chore: gen * feat: pass scope through to wait from sdk * feat: lookback window * feat: wire up opts * feat: add lookup query * feat: look up historical matches * fix: enable durable event log for everyone * fix: array len bug * fix: rm deduplication * fix: throw if either scope or lookback window is provided but not both * fix: simplify * fix: lint docs * fix: lint * refactor: pull satisfying matches into a separate tx * fix: forgot to commit :facepalm: * refactor: factor out logic into helper * feat: add some tests for lookbacks * fix: test cleanup, lint * fix: modify index, add scope * Revert "fix: modify index, add scope" This reverts commit b0ceb91cf36ed7dcb76ad47f81d0360e76a1b38b. * chore: gen ts * fix: start passing scope and lookback window through * fix: finish ts wiring * chore: replicate tests to ts * chore: gen everything * chore: gen again, it's neverending * fix: decrease sleep time * chore: lock * fix: commit if we return early * chore: comment * chore: try pinner redocly * fix: try overriding ajv * fix: impl consider events since in js correctly * chore: changelog * fix: max ordering, last event wins * chore: lint
| Commit: | a899c32 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Add `workflow_run_external_id` to trigger run ack proto (#3299) * feat: add external id to runs entry * chore: gen * fix: python wiring * chore: gen ts * chore: version * fix: wiring * chore: changelog, version * chore: gen
| Commit: | 43e7466 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Durable Execution Revamp (#2954) * Feat: Durable Execution Revamp --------- Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com>
| Commit: | 583bb6f | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
Feat--unify-running-and-evicted (#3248) * feat: unify running and evicted counts with filter * chore: gen * chore: gen lint * fix: opsies... * chore: gen * chore: feedback
| Commit: | 468de0c | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
feat: handle server initiated eviction on workers (#3200) * refactor: ts in sync with python * fix: waits respect abort signal * chore: gen, lint * fix: update key extraction logic in durable workflow example * fix: flake * fix: racey test * chore: gen * feat: send eviction to engine * feat: handle eviction on workers * fix: tests and invocation scoped eviction * fix: cleanup scope * refactor: cleanup how we do action keys in ts * chore: gen, lint * fix: test * chore: lint * fix: mock * fix: cleanup * chore: lint * chore: copilot feedback * fix: reconnect durable listener * chore: feedback * fix: bump worker status on wait and reconnect * refactor: rename eviction notice * fix: return error on query failure * chore: lint * chore: gen * refactor: remove early completion * Revert "refactor: remove early completion" This reverts commit f756ce37b04f4eaf02d8e74615402b773e05049e. * chore: remove unused param
| Commit: | 1cd9660 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
rip: remove unneeded durable event log update (#3186) * rip: update * refactor: start cleaning up proto defs * refactor: finish cleaning up proto definitions * fix: rm the kind * refactor: rewire the server to have different methods for the different paths * refactor: more intermediate work * fix: variables * fix: wire the kind through * refactor: get it to compile * chore: start fixing python * fix: first pass at fixing python * chore: rm unused sql * fix: rm invocation count, rework some logic * fix: alias (why does sqlc not catch this) * fix: panics * fix: add faster timeout to durable spawn test * fix: task id bug * refactor: more cleanup of types * refactor: rm stale entries logic * fix: rework getOrCreate logic * fix: clean up a bunch more unneeded stuff * fix: bug * fix: python code * fix: dag matches bug * fix: add parent to dag to make it more broken, add timeout * fix: more involved tests * fix: dag waits * fix: tests --------- Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
| Commit: | 12bf751 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
feat: durable-bulk-spawn (#3173) * feat: durable bulk spawn * feat: bulk db operations * chore: lint * chore: generate * fix: sqlc hack * cleanup * chore: lint * refactor: remove duplicated code * refactor: simplify input * ops: rules * fix: add missing workflows to worker * chore: add todo * refactor: single execution path * comment * refactor: remove extra class * chore: lint * chore: lint * refactor: batch ack * fix: handle empty refs * chore: feedback * fix: durable output * chore: lint * chore: lint * chore: test fix and gen * revert: actually use bulk * refactor: simplify path * chore: empty commit Made-with: Cursor
| Commit: | 1bffb66 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Branching off branches (#3150) * feat: add branch point table * chore: gen * feat: id for ordering * feat: check for `isBranchPoint` and handle branching * feat: wire up branching over the api * fix: api, gen * fix: gen * fix: branch * feat: remove duped parent node and branch ids * fix: rm branch count, dupe of latest id * refactor: resolve naming * fix: base case * fix: test, + it's literally always a caching issue omg * fix: docs * chore: lint * refactor: make branch resolution more efficient * feat: stable sort, add a bunch of tests * fix: confusing naming * fix: naming * chore: gen * fix: update * fix: failing test --------- Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com>
| Commit: | a6f5fb6 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
chore: rename durable fork to branch (#3174)
| Commit: | 5b58eed | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
tests: compat testing (#3144) * tests: compat testing * fix: new engine old sdk * feat: ruby ts * fix: namespaced tests, conditions * chore: lint ts * fix: python compat * chore: lint * fix: warn on version mismatch * chore: lint * fix: child spawn * refactor: address review * chore: lint * chore: lint * chore: lint * refactor: address reviews * chore: lint * fix: typeguard * tests: docker-compose * fix: docker compose * fix: labels? * chore: skip new tests * fix: backwards compat * fix: grpc proxy
| Commit: | e29459f | |
|---|---|---|
| Author: | mrkaye97 | |
chore: merge main
| Commit: | 6c29e48 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Dynamic worker label assign (#3137) * feat: initial wiring work on desired labels * feat: initial wiring * chore: gen python * fix: use the whole desired label thing instead * fix: more wiring, improve types * fix: sql type * fix: len check * chore: gen python * fix: initial plural label work * fix: store the labels properly on the task * fix: skip cache on override * fix: bug * fix: scoping bug whoops * chore: lint * fix: send labels back over the api correctly * feat: python test * fix: lint * fix: comment * fix: override * fix: namespaces, ugh * fix: no need for error here * chore: version * feat: ruby, go, ts * feat: versions * fix: appease the rubocop * chore: lint * chore: bundle install * fix: tests * chore: lint * chore: lint more * fix: ts test * fix: rb * chore: gen * chore: reset gemfile * chore: reset changelog * fix: pgroup * fix: tests, part i * Revert "chore: reset changelog" This reverts commit b63bf7d3e56d28569dd0344059f5e89c20aa8cee. * Revert "chore: reset gemfile" This reverts commit bb848bb6f0048587467141fb3fc24da0ed81a316. * fix: go -> golang mapping hack * fix: go enums * fix: appease the cop * fix: namespace * chore: gen
| Commit: | 77f769b | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Durable Memoization (#3112) * feat: initial engine / db work * chore: gen python * feat: initial python work * feat: wiring * feat: initial test * fix: scope memo key to the run id (we might not even need this) * chore: gen, docstring * fix: mandatory result type * fix: docs * fix: log a warning and don't cache * fix: add test for non-unique keys, fix some bugs * chore: lint * chore: naming * fix: more naming * fix: comment * chore: gen * fix: docs * fix: naming, ugh * chore: gen * chore: gen * fix: always send event log entry and get ack * fix: initial rework of memo to only use stream * fix: start reworking python side * fix: finish wiring up memo put * chore: fmt * chore: comment for monday * fix: start reworking signature * fix: docstring * fix: union type for send event to improve typing a bunch * fix: memo key * chore: gen * fix: rm unused query * fix: comments
| Commit: | 2d57b67 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
Feat durable olap refactor (#3115) * chore: lint * feat: counting and partitioning * feat: add reason field to DurableTaskEvictInvocationRequest and update eviction handling * fix: eviction durable execution race * chore: generate * refactor: simplified migration * refactor: address review * refactor: analyze parent tables in migraiton * fix: migration * fix: remove no txn * fix: one statement * fix: we do infact need no transaction * add down/up/down to the online migration test * fix: or multiple statements * fix: two migrations... * chore: rm old migraiton * chore: generate * chore: feedback * fix: idempotent migration * refactor: update assertions in durable tests and clean up imports in cache.py * revert: migraiton * chore: wrap down
| Commit: | daff28d | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
Feat: durable eviction take 2 (#3075) * feat: simplified eviction feature * fix: assign new worker id * test: shorter sleep * fix: completion race on same worker * chore: address todo * chore: lint * chore: generate * fix: n+1 queries * refactor: WasEvicted bool * feat: evicted state * chore: generate * fix: map status * fix: update PendingCallback structure to include InvocationCount * revert: comment * feat: add support for EVICTED status in waterfall component and metrics display * fix: implicit eviction * chore: readable cte * refactor: queued bool * refactor: rename eviction_policy * fix: aio only * chore: example return type * fix: map * feat: eviction error cases * refactor: change external ID maps to use UUID type * chore: feedback, cleanup * tests: additional cases * chore: generate * chore: lint * chore: lint generate * chore: clean up comments to make matt happy * refactor: more feedback * chore: add TODO for worker state reconciliation and clean up comments in eviction policy * tests: fix * chore: gen * test: increase ruby timeout... * fix: invocation count * fix: test cases * fix: stale log entry * chore: lint * revert: durable tests to use time.time * chore: lint
| Commit: | 401f9dc | |
|---|---|---|
| Author: | mrkaye97 | |
feat: bulk spawn protos
| Commit: | 28c38ef | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: simplified eviction feature
| Commit: | 6f3f6e0 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Replay as new (or from a node) (#3055) * feat: new messages for reset * chore: gen python * feat: reset scaffolding * feat: initial work * feat: initial e2e wiring of resetting from a specific node * fix: add branch to pk * fix: wire up branches * fix: add branch to awaited entry * feat: start wiring up reset api * fix: colname * fix: add branch id more places * fix: some bugs * fix: replay * fix: replay, simplify * feat: add parent branch id * fix: start reworking parent nodes and branches * fix: parent branch wiring * fix: start fixing some bugs * fix: parent branch bug * fix: advisory lock for locking the log file to prevent concurrent modification * fix: move claude.md ignore path * fix: remove eager replays of events * fix: rm cruft * fix: cleanup more params and such * fix: return type * fix: comment * fix: comments * fix: comment * chore: gen * chore: gen * fix: decrease sleep time * chore: gen again * fix: add invocation count on event log entries, make it int32, fix toInt * fix: more wiring * chore: gen, simplify * fix: lint * fix: more zero values, I hate Go * feat: add `is_durable` to v1_task * feat: initial work wiring up dispatcher to increment log entry invocation counts * feat: wire up assigned action * fix: property * fix: send is durable through to the engine * fix: more invoc count wiring * fix: node resetting * fix:revert * fix: import * chore: gen * fix: reset -> fork * fix: rm a bunch of dead code * fix: api * fix: repo method * fix: log file locking using `FOR UPDATE` + atomic compare-and-set update * fix: move to shared repo * feat: increment invocation count on the scheduler * fix: naming * fix: make test more reliable * fix: props * fix: node id reset
| Commit: | 7e3e3b8 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Non-determinism errors (#3041) * fix: retrieve payloads in bulk * fix: hash -> idempotency key * feat: initial hashing work * feat: check idempotency key if entry exists * fix: panic * feat: initial work on custom error for non-determinism * fix: handle nondeterminism error properly * feat: add error response, pub message to task controller * chore: lint * feat: add node id field to error proto * chore: rm a bunch of unhelpful cancellation logs * fix: conflict issues * fix: rm another log * fix: send node id properly * fix: improve what we hash * fix: improve error handling * fix: python issues * fix: don't hash or group id * fix: rm print * feat: add python test * fix: add timeout * fix: improve handling of non determinism error * fix: propagate node id through * fix: types, test * fix: make serializable * fix: no need to cancel internally anymore * fix: hide another internal log * fix: add link to docs * fix: copilot * fix: use sha256 * fix: test cleanup * fix: add error type enum * fix: handle exceptions on the worker * fix: clean up a bunch of cursor imports * fix: cursor docstring formatting * fix: simplify idempotency key func * fix: add back cancellation logs * feat: tests for idempotency keys * fix: add a couple more for priority and metadata * chore: gen * fix: python reconnect * fix: noisy error * fix: improve log * fix: don't run durable listener if no durable tasks are registered * fix: non-null idempotency keys
| Commit: | eaf6bba | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Refactor: Remove separate callback table (#3045) * fix: remove callback table * fix: type * fix: type * fix: wiring everything up * fix: result payload for replays * chore: lint * feat: set fillfactor * chore: gen * fix: simplify v1 match changes * fix: simplify v1 match wiring * fix: rm print line * fix: some more wiring * fix: wiring * chore: comments * chore: gen, proto naming * chore: comments * fix: rm comment * fix: broken listener
| Commit: | 00b875e | |
|---|---|---|
| Author: | Mohammed Nafees | |
remove useless proto
| Commit: | 77b1e98 | |
|---|---|---|
| Author: | Mohammed Nafees | |
Merge branch 'feat-durable-execution' into nafees/go-sdk-memo
| Commit: | 7ad5bfd | |
|---|---|---|
| Author: | mrkaye97 | |
Merge branch 'main' into feat-durable-execution
| Commit: | 2fdc47a | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
feat: multiple slot types (#2927) * feat: adds support for multiple slot types, primarily motivated by durable slots --------- Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
| Commit: | 174bb13 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
Merge branch 'main' into feat--multiple-slot-types
| Commit: | 63b4d14 | |
|---|---|---|
| Author: | mrkaye97 | |
refactor: initial work
| Commit: | 05399eb | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Durable event log wiring (#2956) * feat: initial protos * chore: lint * fix: work on improving naming * chore: rename session id to invocation count * feat: scaffold implementation of durabletask rpc * fix: one more session rename * feat: initial work on the server scaffolding * chore: gen protos for python * feat: initial durable task client * feat: initial durable context work for python * fix: pass client through to runner * fix: clean up type checking errors * fix: cruft * feat: initial work wiring up durable events * fix: get -> getorcreate * feat: query + wiring for updating latest node id * fix: simplify, bump latest node ids in the same query * chore: note * feat: wire up sleeps with internal signal matches * chore: gen * fix: callback data writes * feat: cache previous events * fix: wire up external id writes * feat: got sleeps sorta working! * fix: tenant and external id wiring * chore: comments * fix: clean up some types a bit * feat: add run triggering params to proto to allow for spawning children * feat: first pass at child spawning * feat: start wiring up child spawning * fix: use `triggerWriter` for spawn * feat: update trigger proto def * chore: regen python * feat: start wiring up spawning correctly with all opts * refactor: share trigger code * chore: remove log lines, lint * fix: add triggered run external id * feat: start wiring up child key storage better * chore: gen again * fix: gen, colname * fix: trigger opts panicking * hack: get things working for now * feat: shared rpc message * chore: fix imports * feat: add tenant id to tables * fix: improve ingest logic * refactor: shared trigger opt type * fix: send tenant id through everywhere * chore: fix log file insert on conflict * fix: repo * fix: generate external id upstream * feat: add columns to the match * feat: first pass at durable waits on the controllers instead of the dispatcher * fix: types * feat: wire up callbacks * fix: invoc counts * fix: typing, lint * driveby: more constants for message ids * refactor: struct for callback keys everywhere * fix: bugs, passing tests * fix: return errnorows * fix: schema * fix: remove current callback flow * feat: new message types * fix: remove key from callback model * fix: rm unused queries * refactor: start reworking flow * fix: start working on feedback * fix: query * fix: wire up external ids * revert: drive by * refactor: rm extra interface * chore: move listener, lint * refactor: remove old listener, rename * refactor: consolidate migrations * fix: immediately send already-satisfied callbacks * fix: union * chore: rm unused queries * fix: check if entry already exists before re-spawning / signaling * fix: node id incrementation * fix: rm json dump * fix: don't pass node id * fix: store latest invocation, update query * fix: upsert logic * Revert "fix: upsert logic" This reverts commit cf7c609c1d8816e1283ab2769fcb88d70258fbc4. * fix: change logic slightly * fix: split up get and create queries * fix: err * fix: pass node ids around properly * fix: invocation handling * fix: callback bug * fix: naming * fix: rm cruft method, dynamic kind * fix: wire up memo payload and kind stuff * fix: propagate trigger opts * fix: child spawn signaling + olap wiring * fix: extract output method * feat: improve test coverage a bit * fix: child spawning * feat: another test * fix: query fixes, overwrite * fix: match bug * fix: proto indexes, regen * fix: eviction comment * fix: warning for non-async durable tasks * fix: rm contracts import * fix: basic locking, rm sync durable tasks * fix: invocation counts, etc. * chore: add fixme * fix: rm unused invocation count param from callback response * fix: rm dispatcher id from the callback * fix: di test * Revert "fix: rm dispatcher id from the callback" This reverts commit 26e6c82797858531a7e2f3a1951365342e06521c. * fix: migration * fix: use optimistictx * fix: lift grpc codes out of trigger repo * fix: span names * fix: rm comment * fix: consolidate kind types, batching, not-null kinds * fix: null bug * fix: satisfied claim bug, simplify queries * fix: add back payload storage * fix: match bug, simplification * fix: factor out trigger opts to the dispatcher level * fix: factor out conditions * fix: rm unused structs * fix: rm dupes * fix: migration * refactor: switch case helpers * fix: panic * fix: couple warnings * fix: lint * fix: generate external ids properly * refactor: return trigger task data from helper * fix: handle matches correctly for dag spawns * fix: add validators, one more uuid type * chore: gen * chore: bump pytest-asyncio to latest * fix: store the worker instead of the dispatcher, then look up the dispatcher * fix: store dispatcher id on the worker * chore: lint
| Commit: | 7875d78 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
Feat: Official Ruby SDK (#3004) * feat: initial ruby sdk * fix: run listener * fix: scope * feat: rest feature clients * fix: bugs * fix: concurrent register * fix: tests and ergonomics * docs: all of them * chore: lint * feat: add RBS * feat: add GitHub Actions workflow for Ruby SDK with linting, testing, and publishing steps * chore: lint * refactor: simplify load path setup for Hatchet REST client and remove symlink creation * fix: cert path * fix: test * fix: blocking * fix: ensure Hatchet client is only initialized once across examples * fix: tests * remove: unused example * fix: bubble up errors * test: skip flaky for now * remove: lifespans * fix: durable context bugs * fix: bulk replay * fix: tests * cleanup: generate tooling * fix: integration test * chore: lint * release: 0.1.0 * chore: remove python comments * refactor: remove OpenTelemetry configuration and related unused options * fix: default no healthcheck * chore: lockfile * feat: register as ruby * chore: lint * chore: update py/ts apis to include ruby * chore: docs pass * chore: lint * chore: generate * chore: cleanup * chore: generate examples * tests: add e2e tests * tests: cache examples dependencies * fix: namespace * fix: namespace * fix: namespaces * chore:lint * fix: improve cancellation workflow polling logic and add error handling * revert: py/ts versions
| Commit: | f13cef5 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | Gabe Ruttner | |
feat: register as ruby
| Commit: | f84f723 | |
|---|---|---|
| Author: | Gabe Ruttner | |
chore: feedback
| Commit: | 1ee54f0 | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: semantic version string
| Commit: | 90fa2e8 | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: sdks backward compat with old engines
| Commit: | e8ff734 | |
|---|---|---|
| Author: | Gabe Ruttner | |
refactor: restore event name
| Commit: | c026986 | |
|---|---|---|
| Author: | Gabe Ruttner | |
feat: add server side evict/restore
| Commit: | 43ff71d | |
|---|---|---|
| Author: | Gabe Ruttner | |
chore: remove unused durable slots param
| Commit: | 18d586b | |
|---|---|---|
| Author: | gabriel ruttner | |
| Committer: | gabriel ruttner | |
naming
| Commit: | 1c488e6 | |
|---|---|---|
| Author: | gabriel ruttner | |
| Committer: | gabriel ruttner | |
dynamic slot types
| Commit: | b1fb028 | |
|---|---|---|
| Author: | gabriel ruttner | |
| Committer: | gabriel ruttner | |
init
| Commit: | 65df4ae | |
|---|---|---|
| Author: | gabriel ruttner | |
olap events
| Commit: | 4054d17 | |
|---|---|---|
| Author: | Gabe Ruttner | |
| Committer: | GitHub | |
chore: proto naming conventions (#2913) * fix: add type override in sqlc.yaml * chore: gen sqlc * chore: big find and replace * chore: more * fix: clean up bunch of outdated `.Valid` refs * refactor: remove `sqlchelpers.uuidFromStr()` in favor of `uuid.MustParse()` * refactor: remove uuidToStr * fix: lint * fix: use pointers for null uuids * chore: clean up more null pointers * chore: clean up a bunch more * fix: couple more * fix: some types on the api * fix: incorrectly non-null param * fix: more nullable params * fix: more refs * refactor: start replacing tenant id strings with uuids * refactor: more tenant id uuid casting * refactor: fix a bunch more * refactor: more * refactor: more * refactor: is that all of them?! * fix: panic * fix: rm scans * fix: unwind some broken things * chore: tests * fix: rebase issues * fix: more tests * fix: nil checks * Refactor: Make all UUIDs into `uuid.UUID` (#2897) * refactor: remove a bunch more string uuids * refactor: pointers and lists * refactor: fix all the refs * refactor: fix a few more * fix: config loader * fix: revert some changes * fix: tests * fix: test * chore: proto * fix: durable listener * fix: some more string types * fix: python health worker sleep * fix: remove a bunch of `MustParse`s from the various gRPC servers * fix: rm more uuid.MustParse calls * fix: rm mustparse from api * fix: test * fix: merge issues * fix: handle a bunch more uses of `MustParse` everywhere * fix: nil id for worker label * fix: more casting in the oss * fix: more id parsing * fix: stringify jwt opt * fix: couple more bugs in untyped calls * fix: more types * fix: broken test * refactor: implement `GetKeyUuid` * cleanup * gen * missed name * slot naming consistency * snake_case * lint * regenerate python * typescript sdk * deprecated getters * lint * fix tests * version bumps * chore: regen sqlc * chore: replace pgtype.UUID again * fix: bunch more type errors * no compat * fix: remove isort * note * Update sdks/python/CHANGELOG.md Co-authored-by: matt <mrkaye97@gmail.com> * feedback * fix: no isort in ci * tui * ts lint * lint * weird undefined * fix test * last changes * lint * fix: ts child spawning * consistent naming * map fields --------- Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
| Commit: | 87a4ded | |
|---|---|---|
| Author: | gabriel ruttner | |
Merge branch 'chore--proto-naming-conventions' into feat--durable-slot-suspension-py-cancellation
| Commit: | e691609 | |
|---|---|---|
| Author: | gabriel ruttner | |
last changes
| Commit: | 87e7b2b | |
|---|---|---|
| Author: | Alexander Belanger | |
remove latest registered node id
| Commit: | 37b2b88 | |
|---|---|---|
| Author: | Alexander Belanger | |
update DurableTask method
| Commit: | ea754b5 | |
|---|---|---|
| Author: | gabriel ruttner | |
Merge branch 'chore--proto-naming-conventions' into feat--multiple-slot-types
| Commit: | c61d053 | |
|---|---|---|
| Author: | gabriel ruttner | |
naming
| Commit: | 96c76d9 | |
|---|---|---|
| Author: | gabriel ruttner | |
feedback
| Commit: | 1f5eac9 | |
|---|---|---|
| Author: | gabriel ruttner | |
note
| Commit: | 4051bdc | |
|---|---|---|
| Author: | gabriel ruttner | |
dynamic slot types
| Commit: | d57bb13 | |
|---|---|---|
| Author: | gabriel ruttner | |
init
| Commit: | c5c968a | |
|---|---|---|
| Author: | Alexander Belanger | |
initial sketch for dispatcher
| Commit: | 10ea4d6 | |
|---|---|---|
| Author: | gabriel ruttner | |
snake_case
| Commit: | 44f2c46 | |
|---|---|---|
| Author: | gabriel ruttner | |
cleanup
| Commit: | 2360b6d | |
|---|---|---|
| Author: | Mohammed Nafees | |
memo go sdk with temp SQL table impl
| Commit: | a3fe89e | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Workflow input JSON schema in trigger preview (#2851) * feat: add input json schema to workflow version * feat: add json schema to putworkflow proto * feat: wire up writes of the json schema * chore: gen python * feat: send json schema from the python code * feat: wiring * feat: pass json schema into code editor * feat: pass prop * fix: clean up validation stuff * feat: allow zod `input` as optional ts field * fix: try except logic hack * fix: rename input -> inputValidator for consistency * chore: gen api * fix: improve hack slightly * chore: changelogs, versions * feat: zod example * chore: rework api a bit * fix: tsc, allow schema to update * fix: improve loading state * fix: api cleanup, sqlc cleanup * fix: initial mount * chore: lint * chore: lint * chore: tsc * fix: lint * fix: unwind unneeded change * [Python] Feat: Default additional metadata (#2876) * Add doc about autoscaling workers (#2864) * add doc for autoscaling workers * oldest also in running stats * chore(deps): bump google.golang.org/api from 0.262.0 to 0.263.0 (#2869) Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.262.0 to 0.263.0. - [Release notes](https://github.com/googleapis/google-api-go-client/releases) - [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.262.0...v0.263.0) --- updated-dependencies: - dependency-name: google.golang.org/api dependency-version: 0.263.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump github.com/getsentry/sentry-go from 0.41.0 to 0.42.0 (#2870) Bumps [github.com/getsentry/sentry-go](https://github.com/getsentry/sentry-go) from 0.41.0 to 0.42.0. - [Release notes](https://github.com/getsentry/sentry-go/releases) - [Changelog](https://github.com/getsentry/sentry-go/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-go/compare/v0.41.0...v0.42.0) --- updated-dependencies: - dependency-name: github.com/getsentry/sentry-go dependency-version: 0.42.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(deps): bump hatchet-sdk in /examples/python/quickstart (#2871) Bumps hatchet-sdk from 1.22.10 to 1.22.11. --- updated-dependencies: - dependency-name: hatchet-sdk dependency-version: 1.22.11 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat: default additional meta * feat: wiring * chore: changelog, version * fix: copy * feat: add default meta to stubs --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Mohammed Nafees <hello@mnafees.me> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: migration ver --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Mohammed Nafees <hello@mnafees.me> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
| Commit: | ebe2f9a | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Add additional meta to the run detail getter (#2770) * feat: add additional meta to proto * feat: propagate metadata * feat: expand test * fix: wiring * chore: version * chore: lint
| Commit: | 73229b0 | |
|---|---|---|
| Author: | matt | |
| Committer: | GitHub | |
Feat: Run detail getter on the engine (#2725) * feat: initial rpc * chore: gen python * feat: add more fields * chore: gen again * fix: finish cleaning up python * feat: start wiring up api * fix: panic * feat: start implementing getters * fix: improve api * feat: expand return type a bit * feat: more wiring * feat: more wiring * fix: finish wiring up input reads * fix: admin client cleanup * fix: ordering * fix: add all_finished param * feat: wire up all finished * fix: propagate allfinished * fix: propagate external ids * chore: gen protos again * fix: one more thing * chore: rename * chore: rename * chore: fix typing * fix: cleanup * feat: add queued default * fix: wiring * feat: running check * fix: query * chore: rm print * fix: edge case handling * feat: python test * feat: add `done` field * feat: pass `done` through * fix: test done flag * fix: cleanup * fix: handle cancelled * refactor: clean up implementations of status handling * fix: feedback * fix: done logic * fix: export run status * fix: couple small bugs * fix: handle done * fix: properly extract input * fix: bug with sequential dags * refactor: improve performance of lookup query slightly * refactor: add helpers on V1StepRunData for getting input + parsing bytes * refactor: create listutils internal package * refactor: status derivation * fix: rm unused method * fix: sqlcv1 import * fix: error log * fix: 404 on not found * feat: changelog, async method
| Commit: | b7299a0 | |
|---|---|---|
| Author: | gabriel ruttner | |
signatures
| Commit: | ee200ee | |
|---|---|---|
| Author: | gabriel ruttner | |
easy feedback
| Commit: | 77d84c2 | |
|---|---|---|
| Author: | gabriel ruttner | |
defaults
| Commit: | e678696 | |
|---|---|---|
| Author: | gabriel ruttner | |
simplify proto
| Commit: | 4ff7ea0 | |
|---|---|---|
| Author: | gabriel ruttner | |
initial feature
| Commit: | 9559529 | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
feat: proto for bulk log puts
| Commit: | 34074af | |
|---|---|---|
| Author: | Mohammed Nafees | |
| Committer: | GitHub | |
Add contextual data for trigger via events (#2092) * add contextual data for trigger via events * fix corrId * string needed
| Commit: | 2f33dd4 | |
|---|---|---|
| Author: | Matt Kaye | |
| Committer: | GitHub | |
Feat: Misc. Python improvements + Streaming Improvements (#1846) * fix: contextvars explicit copy * feat: fix a ton of ruff errors * fix: couple more ruff rules * fix: ignore unhelpful rule * fix: exception group in newer Python versions for improved handling * fix: workflow docs * feat: context docs * feat: simple task counter * feat: config for setting max tasks * feat: graceful exit once worker exceeds max tasks * fix: optional * fix: docs * fix: events docs + gen * chore: gen * fix: one more dangling task * feat: add xdist in ci * fix: CI * fix: xdist fails me once again * fix: fix + extend some tests * fix: test cleanup * fix: exception group * fix: ugh * feat: changelog * Add Ruff linter callout to post * refactor: clean up runner error handling * feat: improved errors * fix: lint * feat: hacky serde impl * fix: improve serde + formatting * fix: logging * fix: lint * fix: unexpected errors * fix: naming, ruff * fix: rm cruft * Fix: Attempt to fix namespacing issue in event waits (#1885) * feat: add xdist in ci * fix: attempt to fix namespacing issue in event waits * fix: namespaced worker names * fix: applied namespace to the wrong thing * fix: rm hack * drive by: namespacing improvement * fix: delay * fix: changelog * fix: initial log work * fix: more logging work * fix: rm print cruft * feat: use a queue to send logs * fix: sentinel value to stop the loop * fix: use the log sender everywhere * fix: make streaming blocking, remove more thread pools * feat: changelog * fix: linting issues * fix: broken test * chore: bunch more generated stuff * fix: changelog * fix: one more * fix: mypy * chore: gen * Feat: Streaming Improvements (#1886) * Fix: Filter list improvements (#1899) * fix: uuid validation * fix: improve filter filtering * fix: inner join * fix: bug in workflow cached prop * chore: bump * fix: lint * chore: changelog * fix: separate filter queries * feat: improve filter filtering * fix: queries and the like * feat: add xdist in ci * feat: streaming test + gen * feat: add index to stream event * fix: rm langfuse dep * fix: lf * chore: gen * feat: impl index for stream on context * feat: tweak protos * feat: extend test * feat: send event index through queue * feat: first pass + debug logging * debug: fixes * debug: more possible issues * feat: generate new stream event protos * feat: first pass at using an alternate exchange for replaying incoming stream events * fix: exchange create timing * fix: rm unused protos * chore: gen * feat: python cleanup * fix: revert rabbit changes * fix: unwind a bunch of cruft * fix: optional index * chore: gen python * fix: event index nil handling * feat: improve test * fix: stream impl in sdk * fix: make test faster * chore: gen a ton more stuff * fix: test * fix: sorting helper * fix: bug * fix: one more ordering bug * feat: add some tests for buffering logic * feat: hangup test * feat: test no buffering if no index sent * fix: regular mutex * fix: pr feedback * fix: conflicts
| Commit: | a9f0bb9 | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
fix: optional index
| Commit: | 9c92084 | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
fix: rm unused protos
| Commit: | dea1a0c | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
feat: generate new stream event protos
| Commit: | 33864a3 | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
feat: tweak protos
| Commit: | 9e82832 | |
|---|---|---|
| Author: | mrkaye97 | |
| Committer: | mrkaye97 | |
feat: add index to stream event
| Commit: | 19f7dc8 | |
|---|---|---|
| Author: | mrkaye97 | |
fix: rm unused protos