* feat(automate): test automations without functions (almost)
* fix(automate): drop function select from test automation creation
* fix(automate): partial test automation panel
* feat(automate): environment configuration in test automation
* fix(automate): closer fit rows
* fix(automate): create test automation runs without functions
* chore: add no floating promises lint rule
* minor cleanup
* fix test by only running if node 22 or greater
---------
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
* fix(server/automate): logger should have request context
* WIP - pass in request Id
* WIP
* fix(automate): better logging for automate processes
* chore(automate): slight log improvement
* fix(automate): just in case
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems>
* fix(automate): use new function query for workspace functions
* fix(automate): include workspace resource claims in auth flow
* chore(automate): do not use btoa
* feat(regions): repo functions for copying project branches and commits
* chore(regions): wire up move to resolver
* chore(regions): successful basic test of project region change
* fix(regions): sabrina carpenter please please please
* fix(regions): repair multiregion test setup
* chore(regions): appease ts
* chore(multiregion): update test multiregion config
* chore(multiregion): fix test docker config and test
* chore(multiregion): use transaction
* chore(multiregion): maybe this will work
* fix(multiregion): drop subs synchronously
* chore(multiregion): desperate test logs
* chore(multiregion): somehow that worked?
* chore(multiregion): add load-bearing log statement
* chore(multiregion): move services
* fix(multiregion): test drop waits
* chore(regions): fix import
* chore(regions): make test a bit more thorough for good measure
* fix(regions): move project objects
* chore(regions): add tests for object move
* feat(regions): move project automations
* chore(regions): add tests for moving automations
* chore(regions): more tests for moving automate data
* fix(regions): speed up inserts
* fix(regions): simplify postgres usage
* chore(regions): repair build
* fix(regions): improve queries
* chore(regions): again
* fix(automate): redirect to workspace after auth if possible
* fix(automate): include session in github auth flow
* chore(automate): update props after merge
* fix(automate): pick => fragment
* fix(automate): use fragments correctly
* feat(automate): query active user functions
* fix(automate): show automations to non-stream-owners
* feat(automate): associate function with workspace
* fix(automate): split functions page between user and example functions
* fix(automate): ugh
* fix(functions): use correct query type in different places
* fix(automate): workspace functions page
* feat(automate): query specific categories of functions
* fix(automate): checkpoint
* fix(workspaces): successful queries w local env
* fix(automate): createFunctionWithoutVersion
* fix(automate): successful associate function with workspace
* fix(automate): query and return workspaces on functions
* fix(automate): show current function workspace
* fix(automate): query functions in automation create dialog
* fix(automate): audit non-owner automation access
* refactor(automate): logs api can get the projectId from the path
* fix(automate): multiregion gql resolvers
* fix(automate): multiregion event listeners
* fix(automate): drop automationCount
* fix(automate): multiregion run status
* fix(automate): correctness
* fix(automate): successful usage of multiregion results
* fix(automate): actually finish event listeners
* chore(automate): fix tests fix tests
* fix(automate): fix tests but make it multiregion flavor
* fix(automate): logs endpoint
* fix(automate): inject projectid correctly
* fix(automate): drop user-source functions
* fix(automate): owners edit, others can view
* fix(automate): simplify queries, auto workspace association
* chore(automate): appease
* chore(automate): fix function types
* fix(automate): get to workspace functions from empty state
* chore(automate): death to all slugs
* fix(automate): no create automation from function
* fix(automate): hide workspace change, tweak role access
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>