Gabe Ruttner
583bb6f4ba
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
2026-03-13 05:57:07 -07:00
matt
1bffb66bb3
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 >
2026-03-05 16:31:01 -05:00
Gabe Ruttner
a6f5fb6871
chore: rename durable fork to branch ( #3174 )
2026-03-05 09:56:46 -08:00
Gabe Ruttner
daff28dbfe
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
2026-02-27 09:25:50 -08:00
matt
6f3f6e08ac
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
2026-02-20 13:01:46 -05:00
Gabe Ruttner
2fdc47a6af
feat: multiple slot types ( #2927 )
...
* feat: adds support for multiple slot types, primarily motivated by durable slots
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
2026-02-17 05:43:47 -08:00
Mohammed Nafees
eefbcdc532
Return event ID after successful webhook trigger ( #3039 )
...
* return webhook event ID on successful receive
* fix pytest
* err handling for json unmarshal
* if clause
2026-02-16 18:36:51 +01:00
Gabe Ruttner
7875d78057
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
2026-02-15 14:32:15 -08:00
Jishnu
9e0182ec77
feat: add python and typescript webhook client ( #2959 )
...
* feat: add python webhook client
* refactor: python webhook client, webhook tests
* add: ts webhook client, example
* remove unwanted assert
* refactor: webhook update eventkey optional
* fix lint
* bump version
* fix: webhooks.create args, webhook example
* fix: infer auth_type from auth payload python
* fix: infer auth type from payload ts
* remove auth type magic strings
2026-02-13 14:04:08 -05:00
Mohammed Nafees
4fd7b94751
Add support for Svix webhooks ( #2996 )
...
* support Svix webhooks
* add migration
* use http status codes
* comment fix
* custom svix verification logic
* copilot comments
* copilot comments
2026-02-11 16:41:36 +01:00
Jishnu
ed43cae0a2
feat: Extend webhook support for scope_expression and payload ( #2874 )
...
* add: scope_expression and payload columns for v1_webhook
* refactor: insert or update sql cmds for v1_webhook
* feat: update api clients, openapi schema for new webhook body
* refactor: receiver and transformer for v1 webhook
* add: python sdk changes
* feat: ts sdk changes
* feat: add FE for webhook new params
* fix: scope expression empty payload
* add: support for scope and payload for go client
* fix: lint
* fix: error message UI on webhook
* fix: lint
* fix: migraiton conflict, build failure
* fix: error handling
* update docs, add tests
* fix: lint, test file name
2026-02-04 12:44:52 -05:00
matt
ffe9f5ce74
Log Search Frontend, Part II ( #2886 )
...
* fix: don't toggle selection if a user is dragging
* fix: command selection state
* fix: close search bar on enter
* fix: improve search bar styling a bit, make it more consistent with designs
* chore: tsc
* Feat: Logs Frontend, Part III (#2888 )
* fix: propagate retry count through properly
* feat: attempt switcher
* fix: attempt numbers
* feat: add attempt param to log query
* feat: wiring
* feat: attempt filter
* chore: changelog
* fix: use the button component
* fix: only close on enter when in FTS mode
* fix: pass retry count and log level in Go
* fix: feedback
* chore: lint
* fix: rm cruft comment
2026-01-30 13:17:21 -05:00
matt
a3fe89ef03
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>
2026-01-29 11:38:25 -05:00
matt
dcf1d377ca
Feat: Add order by direction param to v1LogLineList ( #2849 )
...
* feat: add order by direction param
* fix: order ascending on existing fe
* chore: gen openapi
2026-01-26 14:01:03 -05:00
matt
2837573b6c
[Go] Feat: Webhooks feature client for the Go SDK ( #2792 )
...
* feat: webhooks feature client
* feat: add webhook client
* feat: add v1 webhook client
* feat: example
* fix: webhook client impl
* fix: example + error handling + other client
* fix: missing webhook resources
* chore: gen
2026-01-23 11:04:34 -05:00
matt
b093cc4878
Feat: Add search and levels to logs API ( #2835 )
...
* feat: add log levels and search query to log query
* feat: pass levels, search through
* feat: add log level to query
* feat: wire up levels and search query
2026-01-21 14:27:47 -05:00
Mohammed Nafees
6eba6fa91f
Billing changes ( #2643 )
...
* make changes for billing
* progress around redesign
* meter callback
* modify limits
* upcoming subscription
* fix lint
* fix payment methods
* fix build
* PR comments
* address PR comments
* update cloud contracts
* fix migration name
* fix json serialization error
* loader and fixed for managed compute
* PR comments
* upgrade Go version
* fix migration name
* fix CI
* fix lint CI
* golangci-lint fix
* dedicated subscription
2026-01-19 12:15:11 +01:00
matt
3981626804
Fix: Concurrency display on workflow page ( #2780 )
...
* chore: add task concurrency
* feat: wire up new concurrency field
* feat: clean up table
* feat: some page cleanup
* chore: cleanup
* chore: revert python changes
* feat: code highlighter
* chore: lint
2026-01-12 15:44:44 -05:00
matt
1c4642f33d
Chore: Regen SDKs ( #2731 )
...
* chore: gen python
* chore: start generating ts
* chore: regen ts
* chore: changelog
* fix: copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-31 08:34:48 -07:00
abelanger5
dd9c36c315
refactor: remove v0 paths from codebase ( #2728 )
...
* refactor: remove v0 paths from codebase
* remove uiVersion references
2025-12-30 09:57:00 -05:00
Mohammed Nafees
58758d35b2
Publish COULD_NOT_SEND_TO_WORKER OLAP event due to worker backlog ( #2710 )
...
* could not send to worker OLAP event
* fix lint and PR comments
* submodule GHA
* remove submodule
* no gitsubmodule
* fix migration
* revert sdk workflows
* revert sdk workflows
* revert sdk workflows
2025-12-26 09:35:15 -07:00
Gabe Ruttner
51464917f7
Feat: bulk management schedules ( #2687 )
...
* fix: filter + pagination state handling hack
* fix: use location.pathname
* update to go 1.25
* fix: add version to sdk-go.yml
* schedule run bulk actions
* lint
* typescript
* python
* lint
* docs
* lint docs
* lint
* feedback
* fix lint
* rm unused chunk
* rm statues
* i dont understand python linting sometimes
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
Co-authored-by: Alexander Belanger <alexander@hatchet.run >
2025-12-23 07:44:12 -08:00
matt
bb9f9e2609
Feat: New event getter + janky v0 fix ( #2667 )
...
* feat: v1 event get api
* feat: initial api work
* refactor: clean up existing impl
* chore: gen python
* feat: event get on the events client
* fix: order
* chore: another handler
* chore: new populator hack
* fix: populator
* chore: gen
* chore: version
2025-12-17 11:21:59 -05:00
matt
3a94d06bc6
Feat: Add oldest queued + running jobs to task stats ( #2638 )
...
* feat: add oldest item in task stat
* feat: extend query
* feat: api wiring
* fix: where we compute this
* chore: gen sdk
* chore: changelog, version
2025-12-11 09:54:12 -05:00
Jishnu
e82915b626
feat: add pagination support for V1LogLineList ( #2354 )
...
* feat: pagination for v1 loglines list
* add: sqlc v1 query for loglines count
* add: generated rest-client changes for python sdk
* refactor: frontend logs UI with pagination elements
* add: ts-sdk logline pagination, py logline list pagination docstring
* feat: add since queryparam for v1logline, add infinitescroll pagination on FE
* add custom polling for logs refresh on FE, remove inefficient default refresh logic
* add since queryparam of v1logline to all rest-clients
* refactor: remove offset query param, add until query param(v1logline)
* remove pagination from v1loglinelist
* fix: inconsistent scroll behaviour, add pagination response schema on v1loglist
* add: infinite scroll behavior for smooth log scrolling; prefetch next page logs in advance
* fix: pagination scroll, when task is running, remove stale pagination data when logs tab inactive
* chore: lint
* chore: lint
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
2025-11-07 17:38:29 +01:00
Mohammed Nafees
91cdb28ddf
Logs for liveness and readiness endpoints + PG conn stats ( #2460 )
...
* error logs for liveness and readiness endpoints with pg information
* use context timeout of 3 seconds
* context
2025-10-30 14:35:02 +01:00
Mohammed Nafees
56eb054a1e
New tenant task stats endpoint ( #2433 )
...
* tenant workflow stats endpoint
* not olap but task
* lint
* enable rate limiting on endpoint
* fix SQL query
* spelling
* lesser CTEs
* fix query
* rename to task
* update query
* fix nil pointer
* typed API object
* queues have counts
2025-10-28 16:52:19 +01:00
matt
5b5adcb8ed
Feat: Scheduled run detail view, bulk cancel / replay with pagination helper ( #2416 )
...
* feat: endpoint for listing external ids
* feat: wire up external id list
* chore: regen api
* feat: py sdk wrapper
* fix: since type
* fix: log
* fix: improve defaults for statuses
* feat: docs
* feat: docs
* fix: rm extra file
* feat: add id column to scheduled runs
* feat: side panel for scheduled runs
* fix: side panel header pinned
* fix: border + padding
* chore: gen
* chore: lint
* chore: changelog, version
* fix: spacing of cols
* fix: empty webhook resource limit
* fix: tsc
* fix: sort organizations and tenants alphabetically
2025-10-15 11:36:45 -04:00
matt
8fd90a29a6
Feat: Pausable Crons ( #2395 )
...
* feat: update query, patch route
* feat: api for update
* fix: simplify ui a bit
* feat: wire up fe
* feat: improve copy, spinners
* fix: invert naming to avoid horrible double negative
* fix: improve handling of optional types
* fix: last bits of naming
* feat: persist enabled flag across workflow versions properly
* fix: update spinner
2025-10-08 11:12:14 -04:00
Mohammed Nafees
648244fc9c
use member populator for tenant member API ops ( #2363 )
2025-09-29 21:54:42 +02:00
matt
c1e5fa828b
FE Polish, VI: Make badges dynamically sized, use slate instead of fuchsia for queued, display ms on dates ( #2352 )
...
* fix: rm w-full from badges
* fix: use slate instead of fuchsia for queued
* fix: use `date-funs` to parse + display dates
* fix: worker styling
* debug: redocly
* debug: redocly
* debug: redocly
* debug: redocly
* debug: redocly
* debug: redocly
* feat: direct workflow id getter
* fix: dedupe
* fix: return workflow type
* chore: lint
* chore: lint
* fix: overflow
* fix: include tenant in query for safety
2025-09-26 13:59:06 -04:00
matt
ced1ad43aa
Feat: Filters UI, Events page refactor, Misc. other fixes ( #2276 )
...
* feat: initial filters page work
* feat: cols
* feat: start implementing filters in the hook
* fix: rm some effects
* fix: filter pagination
* fix: placeholder data, query key
* refactor: factor out popover + columns
* fix: tsc
* fix: empty state
* fix: move filters tab down
* fix: remove run id from scheduled runs table
* fix: rm unused
* fix: rm tmp change
* fix: rm one more
* fix: lint
* fix: colname
* feat: declarative checkmark, col key to name mapping
* fix: add more col key to name mappings
* fix: rm log
* fix: rm id checkboxes for events and filters
* refactor: start fixing event cols
* refactor: events hook
* fix: event id
* fix: clickable id
* fix: unwind example
* feat: delete mutation
* feat: form + schema
* feat: update + create mutations
* feat: filter detail
* feat: filter create
* feat: modify cols
* feat: filter detail side panel
* fix: json fallback
* fix: cursors, etc
* fix: cursor
* fix: invalidate
* fix: modal copy
* chore: lint
* fix: openapi spec
2025-09-11 13:41:12 -04:00
Gabe Ruttner
9459dad14d
Feat improve auth error handling ( #1893 )
...
* common errors
* rate limits
* add IP extractor to api server
* use echo rate limit middleware func
* use rate limit for webhooks as well
---------
Co-authored-by: Mohammed Nafees <hello@mnafees.me >
2025-09-11 18:30:07 +02:00
matt
c42d59f5d8
Fix: Remove custom auth ( #2203 )
...
* fix: rm custom auth
* fix: change auth strategy
2025-08-26 13:57:24 -04:00
matt
80fb7657ed
Fix: Child runs not rendering after one day, empty worker ids, additional meta filters not being applied to counts ( #2196 )
...
* fix: child runs not rendering b/c they've timed out of the lookback window
* fix: migration version
* fix: dead links
* fix: additional meta filters for status counts
* chore: lint
2025-08-25 18:20:08 -04:00
Gabe Ruttner
59fe6c110e
feat: improved onboarding part 1 ( #2186 )
...
* feat: analytics events
* improved forms
* store state
* lint
* cleanup tenant name
* nits
* add environment to the form
* environment tag
* include env with tenant
* lint
* fix gen
* address comments
* feedback
* fix: layout
* navigation state
* rm dep
* lint
* address review
* lint
* lint
* fix: build
2025-08-25 11:14:34 -07:00
Mohammed Nafees
2603939526
Introduce customAuth to the OpenAPI spec ( #2168 )
...
* introduce custom auth
* support optional CustomAuthorizationHandler
2025-08-20 17:05:11 +02:00
matt
355a7f197e
Feat: Add Linear to preconfigured webhooks ( #2157 )
...
* feat: add linear
* feat: linear fallthrough
* feat: linear
* fix: copy tweak
2025-08-18 12:19:43 -04:00
matt
36924936fa
Feat: Webhook fixes / improvements ( #2131 )
...
* feat: webhook update
* feat: add headers to cel env
* fix: header casing
* feat: wire up edits
* fix: updates
* fix: finish wiring up updates
* fix: handle save on enter
* fix: lint
* feat: add slack and discord
* feat: initial slack setup
* fix: get slack working
* fix: rm discord for now
* fix: lint
* chore: gen
* fix: explicit save button
* feat: add link to CEL docs
* feat: add callout for reaching out to support
* feat: docs
* refactor: challenge
* fix: naming
* fix: return
* fix: resp codes
* fix: webhooks beta flag
* fix: rm discord
* fix: docs
2025-08-14 10:46:57 -05:00
Mohammed Nafees
e6c50ca1a0
Allow member roles to be changed by owners and admins ( #2044 )
...
* allow member roles to be changed by owners and admins
* PR comments
* chore: gen
* fix: rm changes to /next/
* chore: gen
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com >
2025-07-30 17:42:34 -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
c202ec8359
Feat: CEL Debug Endpoint ( #2010 )
...
* feat: openapi spec + gen
* feat: scaffold cel service
* feat: impl with discriminated union
* fix: reversed
* chore: gen py
* chore: gen + add cel to hatchet client
* feat: wire up TS CEL client
* chore: versions
* feat: impl for go
* fix: error handling
* feat: python tests
2025-07-20 22:44:08 -04:00
Matt Kaye
4676ae8508
FIx: Feedback on replay / cancel ( #1997 )
...
* feat: return a response from replays
* fix: return correct thing
* feat: wire up cancel + replay toasts on FE
* fix: naming
* fix: other refs
* fix: linter setup
2025-07-15 13:29:52 -04:00
abelanger5
6e820a120c
feat: waterfall component ( #1952 )
...
* tmp: waterfall component
* feat: waterfall component
* address pr review comments
2025-07-04 14:47:30 -04:00
Mohammed Nafees
ef498a6235
Introduce tenant Prometheus metrics ( #1875 )
...
* introduce tenant workflow completed metric
* expose tenant prom metrics via handler
* fix workflow and worker id in metrics
* correctly add workflow metrics from workflow controller
* use olap DB to gather information for workflow completion
* fix prom metrics endpoint for tenant
* workflow name from external id
* simplify tenant registry based metrics
* add docs for prometheus metrics
* fix docs lint
* run prettier fix
* WIP metrics work
* use federate prom server URL to proxy metrics
* implement workflow duration histogram metric
* separate prom stack docker compose
* fix duration metrics calls
* move scheduler metrics to prom tenant specific file
* update docs for prom metrics
* fix lint
* use proper indices to query for durations
* reorg tenant metrics
* fix lint for doc
* update docs with promql examples and casing around prom metrics enabled
* update prom server url
* fix lint
* enabled prom metrics for v1 only from controller
2025-06-27 11:46:31 -04:00
Matt Kaye
a45816c6c2
Fix: Streaming + Misc SDK Fixes ( #1903 )
...
* fix: filters contracts + version bumps
* chore: gen
* feat: implement streaming for ts
* fix: v0 sdk side by side
* fix: optional status on semaphore slots
* fix: gen script
* chore: lint + gen
* chore: gen
* fix: fmt
* fix: revert changes
* feat: handle incorrect return types
* fix: worker status not assigned
* fix: improve handling of other types of pydantic models
* fix: handle null output case
* fix: get group key
* fix: info level log for non-retry
* fix: export non retry at top level
* fix: changelog
* chore: gen
* chore: gen
2025-06-26 17:42:34 -04:00
Matt Kaye
25a98cf372
Feat: Copy workflow config from run pages ( #1901 )
...
* feat: add workflow details to more responses
* send workflow version back with task summary
* feat: add copy to run page
* feat: wire up button on other pages
* fix: copy
2025-06-25 13:26:13 -04:00
Matt Kaye
a887c62809
Fix: Store CreateWorkflowVersionOpts for debugging ( #1890 )
...
* feat: add json column for opts
* feat: wiring
* feat: send config through the api
* feat: FE
* fix: order
* fix: hide sched timeout
* fix: lint
* fix: return mutated opts
* fix: adv section
* fix: remove unnecessary headers
* feat: styling improvements to settings
* feat: styling, pt ii
* feat: styling, pt iii
* fix: cron
2025-06-23 16:56:22 -04:00
Matt Kaye
4348dc99e5
Feat: Events Frontend, Redux ( #1859 )
...
* feat: add params to events api
* feat: add more filters to event query
* fix: count query
* feat: start wiring up events queries
* feat: overwrites for queries
* feat: query for event keys
* feat: wire up event key api
* feat: wire up two queries on fe
* feat: fix more wiring
* feat: display event data
* fix: styling
* feat: sidebar
* fix: types + default viz
* feat: scope filter
* feat: index
* fix: queries
* fix: queries, deduping, popover
* fix: lint
* feat: add filter id col to the event to run table
* feat: add filter id to copy
* feat: wire filter through to the db
* feat: send back triggered run ids over the api
* fix: query
* feat: json obj for triggered runs on the event
* fix: cast trick to rm overwrite
* fix: migration
* fix: rm search
* fix: don't show counts on runs modal
* fix: key
* chore: gen ts
* chore: python
* fix: changelog
2025-06-13 14:16:08 -04:00
Matt Kaye
2591c1a4b0
FE Burndown VII: List View, Onboarding, Misc other stuff ( #1851 )
...
* fix: selection states, part i
* fix: selected task deduplication
* fix: naming
* chore: gen
* chore: cruft
* fix: rm cruft
* fix: time filter width on smaller screens
* fix: add cancel badge
* fix: extend timeout of recenter
* fix: exclude more filters on main view
* fix: metadata tooltip / popover layout shift, excluded filters
* fix: more excluded filters
* fix: improve events tooltips
* fix: shad label
* fix: rm worker details side panel
* fix: activity filters
* fix: error message
* fix: start unbreaking onboarding
* feat: add param for engine version on tenant create
* fix: wire up tenant version
* fix: continue reverting onboarding
* fix: sidebar + link
* fix: linters
* fix: default ver
* fix: engine ver handling
* fix: simplify
* fix: simplify
* fix: pluralize build to avoid being dockerignored
2025-06-11 16:30:40 -04:00