Iain Sproat
08ffa1c10b
Merge pull request #4761 from specklesystems/iain/duplicate-workspace-join-request
...
fix(server/workspaces): gracefully handle duplicate workspace join requests
2025-05-19 12:22:24 +01:00
Iain Sproat
ae221df0b0
Incorporate PR comment
2025-05-19 11:00:36 +01:00
Daniel Gak Anagrov
e67c27914c
feat(workspaces): backfill workspace tracking ( #4749 )
...
* added a chron job that updates all workspaces properties to mixpanel
2025-05-19 11:54:52 +02:00
Iain Sproat
29c7e538cb
make it idempotent, not an error
2025-05-19 10:08:26 +01:00
Iain Sproat
765adeecd6
fix(server/workspaces): handle duplicate join request
2025-05-16 17:44:17 +01:00
Iain Sproat
a20684c2bd
missing await
2025-05-16 16:32:00 +01:00
Iain Sproat
43839e9372
fix(server/workspaces): gracefully handle duplicate workspace join requests
2025-05-16 16:12:55 +01:00
Chuck Driesler
a8ae414bde
chore(workspaces): drop legacy join() ( #4752 )
...
* fix(workspaces): drop legacy discoverable workspace join
* fix(workspaces): one more reference
2025-05-15 13:22:42 +01:00
Kristaps Fabians Geikins
5ff030224b
fix(server): fallback to viewer if no seat found ( #4748 )
2025-05-15 12:04:56 +03:00
Daniel Gak Anagrov
fdff51fb51
feat(workspaces): mixpanel update more attributes ( #4713 )
...
* mixpanel recieve more workspace attributes
2025-05-15 07:20:50 +02:00
Kristaps Fabians Geikins
a25df23688
fix(server): seats sometimes not created on role create ( #4740 )
...
* core fix
* fix migration
* minor update
2025-05-14 15:45:14 +03:00
Kristaps Fabians Geikins
4db1531064
feat: "workspace" project visibility ( #4704 )
...
* WIP new visi
* test fixes
* visibility seems to work
* authz policies & authorizeResolver updated
* various test fixes
* users tests
* frontend changes
* minor adjustments
* shared test fix
* test fixes
* force rerun CI
2025-05-14 15:20:26 +03:00
Iain Sproat
f8b0ce34b3
tests(server): do not run Workspace SSO tests if not enabled
2025-05-13 14:27:14 +01:00
Chuck Driesler
19ea8b2879
fix(authz): expose canInvite gql queries ( #4712 )
2025-05-12 21:10:47 +01:00
Chuck Driesler
6d9f3645c4
fix(multiregion): zero !== undefined ( #4683 )
2025-05-07 16:47:49 +01:00
Chuck Driesler
318420aa95
fix(multiregion): repair counting for project region moves ( #4682 )
2025-05-07 15:00:03 +01:00
Kristaps Fabians Geikins
d995a9837e
Revert "Revert "feat(server): workspace project invites as implicit workspace invites"" ( #4672 )
...
* Revert "Revert "feat(server): workspace project invites as implicit workspace…"
This reverts commit 220015ece6 .
* fix invites leak
2025-05-07 14:08:40 +03:00
Chuck Driesler
ddd990508d
fix(multiregion): more logs for move region failure ( #4676 )
2025-05-06 18:11:45 +01:00
Kristaps Fabians Geikins
220015ece6
Revert "feat(server): workspace project invites as implicit workspace invites…" ( #4671 )
...
This reverts commit 22bd90d304 .
2025-05-06 16:21:12 +03:00
Kristaps Fabians Geikins
22bd90d304
feat(server): workspace project invites as implicit workspace invites ( #4634 )
2025-05-06 14:20:29 +03:00
Kristaps Fabians Geikins
211922b6a6
chore: get rid of all old workspace plan code ( #4624 )
...
* first batch of changes
* tests fix
* FE fixed
* renaming constants
* test fixes
* moar test fixes
* another test fix
* reenable app rover check
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com >
2025-04-30 19:18:32 +02:00
Chuck Driesler
76b84e2068
fix(workspaces): wrapper type on limited workspace team ( #4635 )
2025-04-30 16:42:57 +01:00
Kristaps Fabians Geikins
c6dcf18bdb
feat(server): workspace project invite auto-accept (for existing wp members) ( #4622 )
...
* WIP ts
* DI fix & tests moved to TS
* auto-accept seems to work
* CR comments
2025-04-30 17:39:07 +03:00
Alessandro Magionami
437ee6d20b
feat(core): add project field on invites ( #4588 )
...
* feat(core): add project field on invites
* chore(workspaces): add workspaceSlug on invite
2025-04-29 13:06:35 +03:00
Kristaps Fabians Geikins
cf833a7719
fix(server): project role updates after workspace role/seat changes ( #4599 )
...
* fix(workspaces): workspace role sync
* role changes fixed + validated
* seat changes validated
* fix tests
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-04-29 10:49:37 +03:00
Mike
d6d8de41dc
Feat: Increase invite limit from 10 to 200 ( #4618 )
2025-04-28 16:43:58 +02:00
Kristaps Fabians Geikins
9a18a6e1c2
feat(server): ProjectCollaborator.workspaceRole ( #4598 )
2025-04-25 11:02:37 +03:00
Kristaps Fabians Geikins
5df39ce4ce
feat(server): allow activeUser.query to retrieve implicitly accessible projects ( #4593 )
2025-04-25 09:13:13 +03:00
Chuck Driesler
bb51435174
fix(workspaces): no inferior roles for workspaces owners ( #4582 )
2025-04-23 17:50:27 +01:00
Kristaps Fabians Geikins
f1ae0916c6
feat(server): improved user/server profile mp tracking ( #4540 )
...
* user tracking
* server profile tracking
* style
2025-04-23 15:19:24 +03:00
Chuck Driesler
5a34e82829
fix(authz): prevent downgrade during workspace role processing on project invite ( #4558 )
2025-04-23 09:01:12 +01:00
Chuck Driesler
3e0f609bb2
fix(automate): improve search for test automations ( #4515 )
2025-04-22 14:33:46 +01:00
Kristaps Fabians Geikins
e70097cf3e
chore(server): fixed/improved commandFactory ( #4470 )
...
* chore(server): fixed/improved commandFactory
* further improved API
2025-04-22 09:10:44 +03:00
Chuck Driesler
9dfd36431f
fix(invites): projectinvitablecollaborators should only return members ( #4493 )
2025-04-18 11:04:07 +02:00
Kristaps Fabians Geikins
0cc19dbdf5
fix(fe2): not being able to remove member from workspace ( #4468 )
...
* fix(fe2): not being able to remove member from workspace
* minor comment
* withTransaction refactor
2025-04-17 10:44:55 +03:00
Kristaps Fabians Geikins
93bc55630b
fix(server): prevent creating project contributor invite to viewer se… ( #4462 )
...
* fix(server): prevent creating project contributor invite to viewer seat member
* undo regionConfig change
* moar cleanup
2025-04-17 05:00:33 +01:00
Iain Sproat
1e040c4cd4
Merge branch 'main' into iain/web-2732-observability-for-improved-reliability-workspaces
2025-04-16 14:51:59 +01:00
Kristaps Fabians Geikins
62cc07b072
feat(server): add new workspace disclaimer fields to user meta ( #4434 )
...
* feat(server): add new workspace disclaimer fields to user meta
* unrelated tests fix
2025-04-16 12:47:33 +03:00
Gergő Jedlicska
443c9fc514
fix(workspaces): use the correct new plan check and seat rules ( #4445 )
2025-04-16 11:28:57 +02:00
Kristaps Fabians Geikins
10832655d4
fix(server): all project created subs firing for workspace guests + req ctx cache fix for subs ( #4453 )
...
* WIP sub fix
* fix sub resolver caching issue
2025-04-16 11:21:17 +03:00
Chuck Driesler
cebae959ae
feat(authz): Workspace.canInvite and Project.canInvite ( #4419 )
2025-04-16 09:01:53 +01:00
Iain Sproat
afd8895a81
complete workspaces
2025-04-15 10:48:26 +01:00
Iain Sproat
197e9271c5
chore(server/logging): add operations logging to workspace module
2025-04-15 09:48:59 +01:00
Kristaps Fabians Geikins
b287702145
feat: version checks + generally improved auth error messaging ( #4384 )
...
* foundation for new version checks
* canUpdate policy
* can req render
* canReceive
* BE implemented
* FE checks implemented?
* test fix
* improved auth error messaging
* fix lint
2025-04-14 10:43:48 +01:00
Gergő Jedlicska
61ca128ce2
gergo/multiCurrency ( #4379 )
...
* feat(gatekeeper): support multiple currencies
* feat(helm): add new currency based prices to helm chart
* chore(env): add example currency based pricing values
* fix(ci): update price ids to the proper values
* feat(helm): rename price ids to fit multi currency
* feat(gatekeeper): currency input for checkout session
* Updated prices in the FE
* chore(gatekeeper): remove old checkout session flow
* Updated prices in the FE
* Fix FE
* Fix pipeline
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-04-11 17:37:47 +02:00
Chuck Driesler
32796d3dd3
fix(authz): allow optional project id ( #4363 )
2025-04-10 10:12:00 +01:00
Chuck Driesler
ea114fd394
fix(authz): only exempt empty main model ( #4358 )
2025-04-09 15:27:03 +01:00
Chuck Driesler
7cddc87deb
fix(workspaces): use new roles for project moves on new plans ( #4316 )
...
* chore(workspaces): move project role mapping in tests
* fix(workspaces): new world move project to workspace
* chore(workspaces): adjust move project tests
* fix(workspaces): that's on me
2025-04-08 15:32:05 +01:00
Chuck Driesler
cb7243cfbe
feat(authz): Project.canCreateModel and Project.canMoveToWorkspace policies ( #4342 )
...
* feat(authz): Project.canCreateModel policy
* feat(authz): Project.canMoveToWorkspace policy
* fix(authz): expose policies as permissions objects
* chore(authz): actually use the policies lol
* chore(authz): add tests for new policies
* fix(authz): skip affected test
* fix(authz): pr comments
* fix(authz): better errors, better tests
* chore(authz): remove references to deleted error
2025-04-08 15:29:12 +01:00
Gergő Jedlicska
a3644a50c5
gergo/web 2931 introduce missing workspace plans ( #4323 )
...
* fix(gatekeeper): missing priceId-s should stop the server from booting
* feat(shared): add all new workspace plans
* feat(billing): add new world plans
* feat(ci): use stripe sandbox id-s from test env vars
* chore(ci): remove defunct stripe context
* chore(server-env): fix server env example
* feat(gatekeeper): add missing plans to graphql schema
* test(gatekeeper): update plan upgrade tests to match implementation
* fix(ci): update ci .env source
* fix(ci): we do need some secrets from stripe
* fix(ci): run gql schema introspect with the test env
* fix(frontend): format new plan names
* chore(ci): temp disable gql schema checks
* feat(helm): add unlimited seat prices env vars
* feat(helm): add unlimited seat prices to values
* feat(gatekeeper): do not load priceId-s as a side effect, load with module init
2025-04-07 15:24:57 +02:00