Commit Graph

228 Commits

Author SHA1 Message Date
matt 46b3041eb1 Fix: Go unexported type (#3160)
* fix: internal types

* fix: rm unused helper
2026-03-04 17:40:13 -05:00
matt 6c29e48204 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 b63bf7d3e5.

* Revert "chore: reset gemfile"

This reverts commit bb848bb6f0.

* fix: go -> golang mapping hack

* fix: go enums

* fix: appease the cop

* fix: namespace

* chore: gen
2026-03-04 11:03:58 -05:00
Mohammed Nafees fa695fc8ca non blocking ctx.Log with meaningful retries (#3106) 2026-02-25 18:55:17 +01:00
matt 5e672d0514 [Go] Feat: Details Getter (#3105)
* feat: add details getter

* fix: naming

* fix: structs
2026-02-25 12:11:19 -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 22fd98e828 More deprecation messages for older Go SDKs (#3006)
* add more deprecation messages to older Go SDKs

* more comments
2026-02-12 15:40:47 +01: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
Gabe Ruttner 6aff6b6f1f feat: log on delayed heartbeat (#2994)
* feat: log on delayed heartbeat

* don't log on first heartbeat

* fix: 1s
2026-02-11 06:33:51 -08:00
Mohammed Nafees 8755cd5e8e Mark old v0 and generics-based v1 Go SDK methods as deprecated (#2962)
* add deprecation message to old Go SDK v0 and generics-based v1

* link to migration guide
2026-02-09 16:48:16 +01:00
Gabe Ruttner 4054d170d8 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>
2026-02-05 10:35:13 -08:00
abelanger5 983c9e57d9 fix: wrapped types in the Go SDK (#2957) 2026-02-05 08:38:15 -08:00
Mohammed Nafees 45c291c192 Go SDK gRPC client reconnection improvements (#2934)
* go sdk fixes to concurrency listen chans

* use generation
2026-02-04 18:53:18 +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 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
abelanger5 584ba47044 feat: hatchet cli (#2701)
Creates a new CLI for Hatchet! 

- `hatchet profile [add|remove|list|show|update]` - allows managing multiple profiles, like `local` and `cloud`
- `hatchet server [start|stop]` - manages a Hatchet instance locally via docker
- `hatchet quickstart` - generates quickstart directory, similar to `create-react-app`  
- `hatchet worker dev` - creates a filewatcher for a Hatchet instance and automatically injects profile token from a selected profile. Uses a `hatchet.yaml` file in the current directory 
- `hatchet worker run` - runs a script for triggering a workflow using `hatchet.yaml`
- `hatchet tui` - creates the TUI interface
2026-01-13 13:35:43 -05: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
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
abelanger5 7ae0d5f86b fix: WithToken should override environment variable (#2706) 2025-12-23 14:50:15 -05:00
matt b65c6de53f Feat: Hatchet Metrics Monitoring, I (#2699)
* Revert "Revert "Feat: Hatchet Metrics Monitoring, I (#2480)" (#2698)"

This reverts commit b87150767a.

* go mod tidy

---------

Co-authored-by: Mohammed Nafees <hello@mnafees.me>
2025-12-23 20:14:14 +01: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 b87150767a Revert "Feat: Hatchet Metrics Monitoring, I (#2480)" (#2698)
This reverts commit fdc075ec6f.
2025-12-22 16:26:14 -05:00
matt fdc075ec6f Feat: Hatchet Metrics Monitoring, I (#2480)
* feat: queries + task methods for oldest running task and oldest task

* feat: worker slot and sdk metrics

* feat: wal metrics

* repository stub

* feat: add meter provider thingy

* pg queries

* fix: add task

* feat: repo methods for worker metrics

* feat: active workers query, fix where clauses

* fix: aliasing

* fix: sql, cleanup

* chore: cast

* feat: olap queries

* feat: olap queries

* feat: finish wiring up olap status update metrics

* chore: lint

* chore: lint

* fix: dupes, other code review comments

* send metrics to OTel collector

* last autovac

* flag

* logging updates

* address PR comments

---------

Co-authored-by: gabriel ruttner <gabriel.ruttner@gmail.com>
Co-authored-by: Mohammed Nafees <hello@mnafees.me>
2025-12-23 01:04:02 +05:30
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
Sid Premkumar 709dd89a18 Add gzip compression (#2539)
* Add gzip compression init

* revert

* Feat: Initial cross-domain identify setup (#2533)

* feat: initial setup

* fix: factor out

* chore: lint

* fix: xss vuln

* feat: set up properly

* fix: lint

* fix: key

* fix: keys, cleanup

* Fix: use sessionStorage instead of localStorage (#2541)

* chore(deps): bump golang.org/x/crypto from 0.44.0 to 0.45.0 (#2545)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.44.0 to 0.45.0.
- [Commits](https://github.com/golang/crypto/compare/v0.44.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.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 google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml (#2547)

Bumps [google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml](https://github.com/google/osv-scanner-action) from 2.2.4 to 2.3.0.
- [Release notes](https://github.com/google/osv-scanner-action/releases)
- [Commits](https://github.com/google/osv-scanner-action/compare/v2.2.4...v2.3.0)

---
updated-dependencies:
- dependency-name: google/osv-scanner-action/.github/workflows/osv-scanner-reusable-pr.yml
  dependency-version: 2.3.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>

* [Go SDK] Resubscribe and get a new listener stream when gRPC connections fail (#2544)

* fix listener cache issue to resubscribe when erroring out

* worker retry message clarification (#2543)

* add another retry layer and add comments

* fix loop logic

* make listener channel retry

* Compression test utils, and add log to indicate its enabled

* clean + fix

* more fallbacks

* common pgxpool afterconnect method (#2553)

* remove

* lint

* lint

* add cpu monitor during test

* fix background monitor and lint

* Make envvar to disable compression

* cleanup monitoring

* PR Feedback

* Update paths in compression tests + bump package versions

* path issue on test script

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: matt <mrkaye97@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mohammed Nafees <hello@mnafees.me>
2025-11-26 17:14:38 -05:00
Mohammed Nafees f66fe63ad0 [Go SDK] Resubscribe and get a new listener stream when gRPC connections fail (#2544)
* fix listener cache issue to resubscribe when erroring out

* worker retry message clarification (#2543)

* add another retry layer and add comments

* fix loop logic

* make listener channel retry
2025-11-20 19:13:24 +01:00
Mohammed Nafees f97171f245 [Go SDK] Case on worker labels for durable tasks (#2511)
* fix durable task worker labels

* fix assignment
2025-11-12 18:32:58 +01: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 861e205171 Fix Go SDK cron inputs (#2481)
* cron input in Go SDK

* add example
2025-11-02 18:00:23 +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
icbd c8bd3cf93c Add ApplyNamespace for BulkRunWorkflow (#2374) 2025-10-02 13:33:46 +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
Mohammed Nafees 9b0ec2618e Go SDK v1 feature client changes (#2160)
* feature client changes

* remove code duplication

* func name should make sense

* add simple compile gh workflow
2025-09-08 17:10:24 +02:00
Mohammed Nafees 0abefb18ee make sure to case on err properly (#2248) 2025-09-05 13:25:31 +02:00
xcono bb68360959 repo/v1: guard cleanAdditionalMetadata against JSON null; client: avoid null AdditionalMetadata in BulkPush; add regression test (#2191) 2025-08-28 16:33:35 -04: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