matt
c8d5144ed4
[Python] Feat: Dependency Injection, Improved error handling ( #2067 )
...
* feat: first pass at dependency injection
* feat: add DI example + tests
* feat: finish up tests
* feat: docs
* chore: gen
* chore: lint
* chore: changelog + ver
* fix: split up paragraphs
* refactor: improve impl
* chore: gen
* feat: inject input + ctx into deps
* chore: gen
* [Python] Feat: More use of `logger.exception` (#2069 )
* feat: add more instances of `logger.exception`
* chore: ver
* chore: changelog
* fix: one more error log
* chore: gen
* chore: gen
* chore: lint
* fix: improve shutdown
* chore: changelog
* unwind: exit handler
* feat: task run error
* feat: improve error serde with more context
* chore: changelog
* fix: changelog
* chore: gen
* fix: rm celpy + lark dep, casing issues
* chore: changelog
* fix: respect log levels over the API
* fix: changelog
* refactor: rename log forwarder
* fix: circular import
2025-08-11 23:10:44 -04:00
matt
d6f8be2c0f
Feat: OLAP Table for CEL Eval Failures ( #2012 )
...
* feat: add table, wire up partitioning
* feat: wire failures into the OLAP db from rabbit
* feat: bubble failures up to controller
* fix: naming
* fix: hack around enum type
* fix: typo
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: typos
* fix: migration name
* feat: log debug failure
* feat: pub message from debug endpoint to log failure
* fix: error handling
* fix: use ingestor
* fix: olap suffix
* fix: pass source through
* fix: dont log ingest failure
* fix: rm debug as enum opt
* chore: gen
* Feat: Webhooks (#1978 )
* feat: migration + go gen
* feat: non unique source name
* feat: api types
* fix: rm cruft
* feat: initial api for webhooks
* feat: handle encryption of incoming keys
* fix: nil pointer errors
* fix: import
* feat: add endpoint for incoming webhooks
* fix: naming
* feat: start wiring up basic auth
* feat: wire up cel event parsing
* feat: implement authentication
* fix: hack for plain text content
* feat: add source to enum
* feat: add source name enum
* feat: db source name enum fix
* fix: use source name enums
* feat: nest sources
* feat: first pass at stripe
* fix: clean up source name passing
* fix: use unique name for webhook
* feat: populator test
* fix: null values
* fix: ordering
* fix: rm unnecessary index
* fix: validation
* feat: validation on create
* fix: lint
* fix: naming
* feat: wire triggering webhook name through to events table
* feat: cleanup + python gen + e2e test for basic auth
* feat: query to insert webhook validation errors
* refactor: auth handler
* fix: naming
* refactor: validation errors, part II
* feat: wire up writes through olap
* fix: linting, fallthrough case
* fix: validation
* feat: tests for failure cases for basic auth
* feat: expand tests
* fix: correctly return 404 out of task getter
* chore: generated stuff
* fix: rm cruft
* fix: longer sleep
* debug: print name + events to logs
* feat: limit to N
* feat: add limit env var
* debug: ci test
* fix: apply namespaces to keys
* fix: namespacing, part ii
* fix: sdk config
* fix: handle prefixing
* feat: handle partitioning logic
* chore: gen
* feat: add webhook limit
* feat: wire up limits
* fix: gen
* fix: reverse order of generic fallthrough
* fix: comment for potential unexpected behavior
* fix: add check constraints, improve error handling
* chore: gen
* chore: gen
* fix: improve naming
* feat: scaffold webhooks page
* feat: sidebar
* feat: first pass at page
* feat: improve feedback on UI
* feat: initial work on create modal
* feat: change default to basic
* fix: openapi spec discriminated union
* fix: go side
* feat: start wiring up placeholders for stripe and github
* feat: pre-populated fields for Stripe + Github
* feat: add name section
* feat: copy improvements, show URL
* feat: UI cleanup
* fix: check if tenant populator errors
* feat: add comments
* chore: gen again
* fix: default name
* fix: styling
* fix: improve stripe header processing
* feat: docs, part 1
* fix: lint
* fix: migration order
* feat: implement rate limit per-webhook
* feat: comment
* feat: clean up docs
* chore: gen
* fix: migration versions
* fix: olap naming
* fix: partitions
* chore: gen
* feat: store webhook cel eval failures properly
* fix: pk order
* fix: auth tweaks, move fetches out of populator
* fix: pgtype.Text instead of string pointer
* chore: gen
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-30 13:27:38 -04:00
matt
cca0999eea
[Python]: Fixing logging bugs, fixing duped sleep key bug ( #2040 )
...
* feat: add flag to disable log capture
* fix: sleep bug with duped key
* fix: allow formatters to be passed through
* feat: support filters too
* fix: cruft
* chore: gen
* feat: changelog
* fix: lint
* [Python] Fix: Don't retry gRPC requests on 4xx (#2024 )
* fix: dont retry on 4xx
* chore: ver
* fix: sleep conditions with index
* fix: bug in sleep conditions
* chore: gen
2025-07-23 15:15:31 -04:00
Matt Kaye
f1f276f6dc
Feat: Python task unit tests ( #1990 )
...
* feat: add mock run methods for tasks
* feat: docs
* feat: first pass at unit tests
* cleanup: split out tests
* feat: pass lifespan through
* fix: rm comment
* drive by: retry on 404 to help with races
* chore: changelog
* chore: ver
* feat: improve logging everywhere
* chore: changelog
* fix: rm print cruft
* feat: print statement linter
* feat: helper for getting result of a standalone
* feat: docs for mock run
* feat: add task run getter
* feat: propagate additional metadata properly
* chore: gen
* fix: date
* chore: gen
* feat: return exceptions
* chore: gen
* chore: changelog
* feat: tests + gen again
* fix: rm print cruft
2025-07-17 13:54:40 -04:00
Matt Kaye
7679732b15
Fix: Skipping conditions with multiple parents ( #1948 )
...
* fix: skipping bug
* fix: move `waits` -> `conditions`
* fix: refs
* chore: ver
* feat: add skipped task to test
* feat: start implementing or groups in wait for
* feat: test of or groups on durable context
* fix: lint
* chore: gen
* fix: lint
* fix: branching hell
2025-07-03 16:50:57 -04:00
Matt Kaye
a73e34cd92
Feat: Batched replays ( #1860 )
...
* feat: batched replays
* fix: add some comments
* feat: e2e test for bulk replays
* chore: gen
* fix: improving tests a bit
* fix: copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* chore: gen
* fix: tag
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-06-13 13:47:50 -04:00
Matt Kaye
08bd27a869
Feat: Dynamic (Event) Filters ( #1704 )
...
* feat: add events tables
* fix: tweak PK
* feat: migration
* feat: gen models
* fix: add external id col + index
* fix: uuid pk
* fix: types
* chore: gen
* feat: add index
* Feat: Write events into OLAP tables (#1634 )
* feat: query for event creation
* feat: olap impl
* feat: wire up the olap event write
* feat: goroutine?
* feat: start wiring up inserts to triggers
* fix: no `RETURNING`
* fix: hack
* fix: inner join
* feat: attempt 2
* fix: return errors
* chore: lint
* fix: diff
* feat: add new partitions
* fix: eof
* fix: write external ids into table
* chore: gen
* fix: wiring
* fix: event deduping
* fix: insert in bulk
* fix: bug
* refactor: return type of trigger
* fix: unnest ids
* fix: unnest tenant ids
* fix: run ids in bulk insert
* feat: two bulk inserts, one tx
* fix: cruft
* fix: bug
* Update pkg/repository/v1/olap.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: rework to avoid n^2 loop
* fix: transaction timeout
* fix: lint
* fix: use error
* fix: rm penultimate version
* fix: rm penultimate test part ii
* Feat: CEL-based filtering of events (#1676 )
* feat: add optional expression to workflow trigger event ref
* feat: proto field for expression
* feat: write and parse the expression
* feat: wire up through put workflow ver request
* feat: query
* fix: naming
* fix: cleanup
* fix: rebase
* Update pkg/repository/v1/trigger.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: skip workflow on cel eval failure
* fix: zero value
* fix: cel evaluator
* fix: usage
* fix: naming + type
* fix: rm event filter from v0 defn
* feat: tests + fix typing
* fix: usage
* fix: construct input
* feat: always write events
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: select existing partitions
* feat: add prio to push event request
* feat: priority from pushed events
* fix: missed a spot
* fix: write events even if they're not tied to any workflows
* fix: revert cel event filtering
* fix: couple more
* fix: simplify
* feat: filters api
* feat: table for storing filters
* feat: migration
* fix: pk ordering
* feat: wiring up initial api
* feat: impl filter list
* feat: wire up inserts of filters
* feat: add resource hint to push event
* feat: multi-select filters
* feat: wire up resource hint on event push
* feat: filtering
* fix: small bug
* fix: rm version id
* fix: query
* fix: panic
* fix: schema
* fix: naming
* fix: rm python changes
* chore: lint
* fix: uuid hint
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: use overwrite for listing filters b/c of nullable arg
* fix: naming
* feat: add events tables
* fix: tweak PK
* feat: migration
* feat: gen models
* fix: add external id col + index
* fix: uuid pk
* fix: types
* chore: gen
* feat: add index
* Feat: Write events into OLAP tables (#1634 )
* feat: query for event creation
* feat: olap impl
* feat: wire up the olap event write
* feat: goroutine?
* feat: start wiring up inserts to triggers
* fix: no `RETURNING`
* fix: hack
* fix: inner join
* feat: attempt 2
* fix: return errors
* chore: lint
* fix: diff
* feat: add new partitions
* fix: eof
* fix: write external ids into table
* chore: gen
* fix: wiring
* fix: event deduping
* fix: insert in bulk
* fix: bug
* refactor: return type of trigger
* fix: unnest ids
* fix: unnest tenant ids
* fix: run ids in bulk insert
* feat: two bulk inserts, one tx
* fix: cruft
* fix: bug
* Update pkg/repository/v1/olap.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: rework to avoid n^2 loop
* fix: transaction timeout
* fix: lint
* fix: use error
* fix: rm penultimate version
* fix: rm penultimate test part ii
* Feat: CEL-based filtering of events (#1676 )
* feat: add optional expression to workflow trigger event ref
* feat: proto field for expression
* feat: write and parse the expression
* feat: wire up through put workflow ver request
* feat: query
* fix: naming
* fix: cleanup
* fix: rebase
* Update pkg/repository/v1/trigger.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: skip workflow on cel eval failure
* fix: zero value
* fix: cel evaluator
* fix: usage
* fix: naming + type
* fix: rm event filter from v0 defn
* feat: tests + fix typing
* fix: usage
* fix: construct input
* feat: always write events
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: select existing partitions
* feat: add prio to push event request
* feat: priority from pushed events
* fix: missed a spot
* fix: write events even if they're not tied to any workflows
* fix: revert cel event filtering
* fix: couple more
* fix: simplify
* fix: gen api
* fix: merge issues
* feat: filter delete endpoint
* fix: overwrite
* fix: delete filter api wiring
* fix: migration patch
* chore: gen
* fix: merge hell
* Revert "Revert "Feat: Events in the OLAP Repo (#1633 )" (#1706 )"
This reverts commit bf29269a27 .
* Feat: Events Frontend (#1678 )
* feat: add events tables
* fix: tweak PK
* feat: migration
* feat: gen models
* fix: add external id col + index
* fix: uuid pk
* fix: types
* chore: gen
* feat: add index
* Feat: Write events into OLAP tables (#1634 )
* feat: query for event creation
* feat: olap impl
* feat: wire up the olap event write
* feat: goroutine?
* feat: start wiring up inserts to triggers
* fix: no `RETURNING`
* fix: hack
* fix: inner join
* feat: attempt 2
* fix: return errors
* chore: lint
* fix: diff
* feat: add new partitions
* fix: eof
* fix: write external ids into table
* chore: gen
* fix: wiring
* fix: event deduping
* fix: insert in bulk
* fix: bug
* refactor: return type of trigger
* fix: unnest ids
* fix: unnest tenant ids
* fix: run ids in bulk insert
* feat: two bulk inserts, one tx
* fix: cruft
* fix: bug
* Update pkg/repository/v1/olap.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: rework to avoid n^2 loop
* fix: transaction timeout
* fix: lint
* fix: use error
* fix: rm penultimate version
* fix: rm penultimate test part ii
* Feat: CEL-based filtering of events (#1676 )
* feat: add optional expression to workflow trigger event ref
* feat: proto field for expression
* feat: write and parse the expression
* feat: wire up through put workflow ver request
* feat: query
* fix: naming
* fix: cleanup
* fix: rebase
* Update pkg/repository/v1/trigger.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: skip workflow on cel eval failure
* fix: zero value
* fix: cel evaluator
* fix: usage
* fix: naming + type
* fix: rm event filter from v0 defn
* feat: tests + fix typing
* fix: usage
* fix: construct input
* feat: always write events
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: select existing partitions
* feat: add prio to push event request
* feat: priority from pushed events
* fix: missed a spot
* fix: write events even if they're not tied to any workflows
* fix: revert cel event filtering
* fix: couple more
* fix: simplify
* feat: initial API work
* chore: gen ts
* feat: fe skeleton
* feat: wiring up skeleton data
* feat: hook
* fix: bugs
* fix: lint on gen
* fix: couple more
* feat: wire up counts
* feat: initial events cols + styling
* feat: layout
* feat: styling
* fix: cleanup
* feat: use external ids on the FE
* fix: separate openapi spec for new events route
* fix: required param
* fix: update queries and api
* feat: event detail
* fix: page
* fix: rebase
* tweak: table
* feat: add events page to sidebar
* feat: modify queries to allow fetching by triggering event
* feat: add triggering event id to api
* chore: lint
* feat: wire up events api
* fix: rm log
* fix: gen
* feat: wire up status counts
* fix: rm time series
* fix: rm state
* fix: lint
* fix: eof
* chore: lint
* feat: wire up filters
* fix: lint
* chore: api gen
* feat: add events tables
* fix: tweak PK
* feat: migration
* feat: gen models
* fix: add external id col + index
* fix: uuid pk
* fix: types
* chore: gen
* feat: add index
* Feat: Write events into OLAP tables (#1634 )
* feat: query for event creation
* feat: olap impl
* feat: wire up the olap event write
* feat: goroutine?
* feat: start wiring up inserts to triggers
* fix: no `RETURNING`
* fix: hack
* fix: inner join
* feat: attempt 2
* fix: return errors
* chore: lint
* fix: diff
* feat: add new partitions
* fix: eof
* fix: write external ids into table
* chore: gen
* fix: wiring
* fix: event deduping
* fix: insert in bulk
* fix: bug
* refactor: return type of trigger
* fix: unnest ids
* fix: unnest tenant ids
* fix: run ids in bulk insert
* feat: two bulk inserts, one tx
* fix: cruft
* fix: bug
* Update pkg/repository/v1/olap.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: rework to avoid n^2 loop
* fix: transaction timeout
* fix: lint
* fix: use error
* fix: rm penultimate version
* fix: rm penultimate test part ii
* Feat: CEL-based filtering of events (#1676 )
* feat: add optional expression to workflow trigger event ref
* feat: proto field for expression
* feat: write and parse the expression
* feat: wire up through put workflow ver request
* feat: query
* fix: naming
* fix: cleanup
* fix: rebase
* Update pkg/repository/v1/trigger.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: skip workflow on cel eval failure
* fix: zero value
* fix: cel evaluator
* fix: usage
* fix: naming + type
* fix: rm event filter from v0 defn
* feat: tests + fix typing
* fix: usage
* fix: construct input
* feat: always write events
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: select existing partitions
* feat: add prio to push event request
* feat: priority from pushed events
* fix: missed a spot
* fix: write events even if they're not tied to any workflows
* fix: revert cel event filtering
* fix: couple more
* fix: simplify
* fix: gen api
* fix: gen
* fix: more merge issues
* chore: gen
* fix: lockfile
* fix: merge issues
* chore: gen again
* fix: rm unused fields from openapi spec
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: migration ver
* fix: insert trigger, event types
* fix: bunch o refs
* fix: migration
* fix: queries
* fix: finish wiring up inserts
* fix: misc bugs
* fix: fe filtering
* chore: gen
* fix: migration ver
* chore: lint
* fix: missed a couple
* fix: whitespace
* fix: formatting, gen
* fix: uuid id for filters
* feat: rest api for filters
* fix: tag
* feat: add event id, payload, and metadata to cel env
* fix: rename resource hint to scope
* chore: gen
* fix: same conflict, different day
* feat: send filter payload with input
* fix: lint
* fix: invert filter to "positive" case
* fix: naming
* feat: send payloads back with trigger data
* fix: add case to check if no filters were found
* fix: send additional meta back on bulk push
* fix: cleanup from self review
* fix: more small cleanup
* feat: initial pr feedback
* feat: validation
* fix: populator
* Feat: SDK changes for event filtering (#1677 )
* feat: query for event creation
* feat: wire up the olap event write
* feat: goroutine?
* feat: start wiring up inserts to triggers
* fix: no `RETURNING`
* fix: hack
* fix: inner join
* feat: attempt 2
* fix: return errors
* fix: diff
* feat: add new partitions
* fix: write external ids into table
* chore: gen
* fix: wiring
* fix: event deduping
* fix: insert in bulk
* fix: unnest ids
* fix: run ids in bulk insert
* feat: two bulk inserts, one tx
* fix: rework to avoid n^2 loop
* feat: proto field for expression
* fix: rm event filter from v0 defn
* chore: gen python
* Revert "fix: select existing partitions"
This reverts commit fefbdd5122b85c5d807c3dce3aed7d974f01a7d8.
* fix: rebase hell
* feat: prio
* chore: docs
* feat: gen ts
* feat: ts wiring
* feat: go
* fix: prio test bug
* chore: gen
* fix: validation bug
* feat: extend events client
* feat: e2e test
* chore: docs
* fix: test
* fix: unwind event filter
* fix: rm should skip
* chore: gen
* chore: gen
* chore: gen
* feat: resource hints + more e2e tests
* fix: use `cached_property` for id
* fix: raises
* fix: rm print cruft
* feat: wiring + e2e test
* chore: gen
* feat: wire up python sdk
* feat: static payload in test
* fix: use test run id in payload
* fix: longer sleeps
* feat: more tests
* feat: intermediate work
* feat: add validator for filter payload
* fix: rm cruft
* fix: event example
* fix: event example
* fix: e2e tests
* fix: finish cleaning up tests
* fix: __hash__ method
* fix: copilot comments!
* fix: apply namespaces to workflow names in a couple of the feature clients
* fix: handle case where namespace is falsey
* refactor: factor out
* fix: all the other refs to namespaced things
* fix: put `apply_namespace` on the client config
* fix: namespace overrides
* fix: implicitly use function name for hatchet task
* fix: name
* fix: refs
* chore: ver
* fix: durable tests
* feat: add a changelog!
* fix: changelog format
* feat: start wiring up filters in ts
* feat: scopes on event push
* feat: wire up triggering event id filter
* feat: initial ts e2e test work
* fix: run the test
* fix: drive-by bug in AI-gen slop
* fix: test naming
* feat: more test cleanup
* fix: api
* fix: ns override
* fix: test + API
* fix: lint
* fix: cruft
* chore: gen
* fix: dont run in ci?
* fix: wire up Go SDK
* fix: compiler
* fix: examples
* fix: event snippet, I think
* chore: docs
* Revert "fix: examples"
This reverts commit cbf33d6299 .
* Revert "fix: compiler"
This reverts commit 52336abeb2 .
* fix: add push opt funcs for prio and scope
* chore: ver
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-05-16 15:44:28 -04:00
Nathan Gage
99bcfa1037
add: CoroutineLike & AwaitableLike types ( #1713 )
...
* add: CoroutineLike & AwaitableLike types
* fix: type checker
* fix: reduce type narrowing on _parse_task_name
* fix: rm _aio_output helper
* Revert "fix: rm _aio_output helper"
This reverts commit ff51126c43 .
* fix: rm _aio_output helper
* chore: version
* feat: add tests for all the standalone run flavors
* refactor: simplify internals a bit
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
2025-05-14 11:06:14 -04:00
Matt Kaye
94d06a643c
[Python] Fix: Task defaults, Patching fixes, Datetime conversions ( #1667 )
...
* feat: start wiring up defaults
* feat: add test coverage
* fix: test docs
* feat: expand tests
* fix: rm validators for now
* chore: minor version
* fix: skip prio tests in ci for now
* chore: docs
* debug: attempt to fix prio test by running with a single slot and no concurrency
* fix: python script to apply patches
* chore; gen
* feat: atomic patches
* fix: rm sed-based patches
* fix: use current tz
* fix: ordering
2025-05-06 17:31:36 -04:00
abelanger5
c6abd6b9d2
feat: multiple workflow concurrency keys ( #1511 )
...
* feat: multiple workflow concurrency keys
* [Python]: Allow multiple workflow-level concurrency keys (#1512 )
* chore: generate
* feat: multi concurrency
* chore: version
* feat: example + test
* fix: expand tests
* Feat ts multiple wf concurrency (#1522 )
* feat: multiple concurrency
* release: 1.2.0
* fix: merge
* fix: concurrency defn
* fix: ts multiple concurrency backwards compat (#1531 )
* fix
* gen
* chore: lint
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
---------
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com >
* chore: ver
* chore: gen
* chore: versions
* fix: manually rename migration
* fix: patch ver
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com >
2025-04-14 17:29:17 -04:00
Matt Kaye
80137736af
Feat: Priority ( #1513 )
...
* feat: initial work wiring up priorities
* fix: add default to default prio in the db
* feat: wire priority through api on wf creation
* feat: extend python test
* feat: priority for scheduled workflows
* feat: wire priority through python api
* feat: more wiring priority through the api
* feat: I think it works?
* feat: e2e test for priority
* it works!
* feat: expand tests for default priorities
* feat: e2e scheduling test
* fix: skip broken test for now
* fix: lint
* feat: add priority columns to cron and schedule ref tables
* feat: update inserts to include prio
* feat: wire up more apis
* feat: more wiring
* feat: wire up more rest api fields
* chore: cruft
* fix: more wiring
* fix: lint
* chore: gen + wire up priorities
* fix: retries
* fix: try changing fixture scope
* chore: bump version again
* feat: send priority with action payload
* fix: generate script
* Feat priority ts (#1518 )
* feat: initial work wiring up priorities
* fix: add default to default prio in the db
* feat: wire priority through api on wf creation
* feat: extend python test
* feat: priority for scheduled workflows
* feat: wire priority through python api
* feat: more wiring priority through the api
* feat: I think it works?
* feat: e2e test for priority
* it works!
* feat: expand tests for default priorities
* feat: e2e scheduling test
* chore: minor version for priority
* fix: skip broken test for now
* fix: lint
* feat: add priority columns to cron and schedule ref tables
* feat: update inserts to include prio
* feat: wire up more apis
* feat: more wiring
* feat: wire up more rest api fields
* chore: cruft
* fix: more wiring
* fix: lint
* chore: gen + wire up priorities
* fix: increase timeout
* fix: retries
* fix: try changing fixture scope
* chore: generate
* fix: set schedule priority
* feat: priority
* fix: move priority to wf
* release: 1.2.0
* rm log
* fix: import
* fix: add priority to step
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
* fix: add dummy runs to priority test to prevent race conditions
* fix: non-breaking field
* fix: gen
* feat: initial pass at docs
* feat: priority in go sdk
* feat: initial work on go example
* fix: doc examples
* fix: proofread
* chore: version
* feat: go sdk
* fix: lint
* fix: declarations and add back RunAsChild
* fix: child workflows
* fix: namespace
* fix: faster child workflows
* fix: sticky
* add back run as child
---------
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com >
Co-authored-by: Alexander Belanger <alexander@hatchet.run >
2025-04-14 16:22:00 -04:00
Matt Kaye
90805ca763
Feat: Lifespans! ( #1541 )
...
* feat: implement lifespans
* feat: add psycopg test dep
* feat: lifespan script
* feat: examples and tests
* drive-by: add license
* drive-by: throw errors for sanity checks
* feat: docs
* feat: sync and async
* fix: docs
* fix: lint
* fix: small tweaks
* fix: rm unused
* fix: typed example
* fix: print
2025-04-14 08:56:39 -04:00
abelanger5
f09c1d11fa
feat: multiple non-workflow level concurrency slots ( #1508 )
...
* feat: multiple non-workflow level concurrency slots
* feat: first pass at e2e test
* fix: lint
* fix: try sleeping?
* fix: namespacing
* chore: version
* feat: expand test
* Fix: Add `get_run_ref` to `runs` client (#1509 )
* feat: add run ref
* chore: ver
* fix: expand standalone
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
2025-04-08 17:17:28 -04:00
Matt Kaye
77f81476bd
[Docs, Python] Expand Cancellation + Conditional Workflow Docs, Fix cancellation in Python ( #1471 )
...
* feat: expand conditional docs
* feat: initial cancellation work + fixing some broken links
* feat: docs on cancellation
* python: fix cancellation
* python: cruft
* chore: version
* feat: python example
* fix: TS cancellation examples
* fix: lint
* feat: go example
* feat: half-baked ts conditional logic workflow
* feat: add ts example conditional workflow
* feat: go example
* feat: go example
* fix: cancellation test
* fix: thanks, copilot!
* Update frontend/docs/pages/home/conditional-workflows.mdx
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com >
* fix: lint
* chore: lint
* fix: longer sleep
---------
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com >
2025-04-02 19:51:51 -04:00
Matt Kaye
58d54703b2
Feat: Non-Retryable Exceptions ( #1456 )
...
* feat: add boolean flag to proto
* feat: initial wiring up priorities and non-retryables
* fix: query
* fix: cruft comment
* fix: rm priority changes
* feat: python side
* feat: tests for non-retrying workflows
* feat: expand tests
* chore: generate ts
* feat: add name prop to wf
* feat(go-sdk): non retryable error
* feat: start implementing ts
* cleanup: simplify to raising a specific error
* fix: simplify ts
* feat: ts examples
* feat: ver
* feat: docs
* fix: tests + linters
---------
Co-authored-by: Alexander Belanger <alexander@hatchet.run >
2025-04-01 15:34:43 -04:00
Matt Kaye
6aa8f4d555
[Docs, Python]: Durable execution, fixing broken links, Python fixes ( #1449 )
...
* feat: show durable execution docs
* fix: move durable execution
* feat: add some more durable notes
* feat: more docs
* fix: broken link bashing
* feat: add test for waits
* fix: clean up a bunch of mypy errors
* chore: version
* feat: make sure durable worker is running
* fix: sleep longer
* fix: skip unreliable tests in ci
* fix: var name
* update durable execution doc
---------
Co-authored-by: Alexander Belanger <alexander@hatchet.run >
2025-03-28 20:17:36 -07:00
Matt Kaye
5062bf1e3e
V1 SDKs and Docs ( #1361 )
...
New SDKs and docs for the v1 release.
2025-03-25 15:45:07 -07:00