⚠️ Breaking changes
- Remove any reference to
clientConfig.subdomainMinLength— the field is deleted fromClientConfigintwenty-client-sdk. (#23915) by @ijreilly - Cursor-pagination types from the metadata API (
FieldEdge,FieldFilter,CursorPaging,PageInfo,ConnectionCursor, and comparison inputs) are removed; switch to the offset-based equivalents in the updated schema. (#23925) by @abdulrahmancodes
🌟 Highlights
- BREAKING:
subdomainMinLengthis removed fromClientConfigintwenty-client-sdk— drop any reference toclientConfig.subdomainMinLength. (#23915) - BREAKING: Cursor-pagination types from the metadata API (
FieldEdge,FieldFilter,CursorPaging,PageInfo,ConnectionCursor) are removed following the nestjs-query migration. (#23925) runAgentnow accepts amessagesarray (alternating user/assistant turns) for multi-turn bot conversations; existingprompt-only calls are unchanged. (#23395)runAgentcan now execute on behalf of a specific workspace member, scoping the agent to that user's permissions. (#23470)CALL_RECORDING_SUMMARYandCALL_RECORDING_TRANSCRIPTare registered as new widget types and appear intwenty-client-sdkgenerated types. (#23864)
✨ New features
- Pass a
messagesarray (alternating user/assistant turns) torunAgentfor multi-turn bot conversations; the existingpromptfield continues to work for one-shot calls. (#23395) by @abdulrahmancodes - New option on
runAgentlets your app execute an agent as a specific workspace member, capping the agent's permissions to that user's role. (#23470) by @abdulrahmancodes CALL_RECORDING_SUMMARYandCALL_RECORDING_TRANSCRIPTare now registered widget types; they appear intwenty-client-sdkgenerated type definitions. (#23864) by @ehconitinUser.isWorkspaceCreatoris now a resolved GraphQL field, accessible throughtwenty-client-sdkgenerated types. (#23881) by @bosiraphael
💅 Improvements & UX
- Minimum allowed subdomain length is now 1 character instead of 3; update any client-side subdomain validation that assumed the old floor. (#23871) by @ijreilly
🐛 Bug fixes
- Logic function layer builds no longer die with out-of-memory errors when an app bundles large packages such as
twenty-ui. (#23805) by @charlesBochet
⚡ Performance
- Workspace metadata cache now uses compact storage behind a server flag, reducing GC pressure on heavy traffic; no API changes. (#23880) by @charlesBochet
🏗️ Internal changes (11)
- Make subdomain minimum length configurable via env var (#23209) by @ijreilly
- Add a book-a-call onboarding step for qualified leads (#23521) by @bosiraphael
- Feat/advanced text editor capability presets (#23657) by @ijreilly
- feat(workflow): dispatch automated triggers from core behind a flag (#23775) by @thomtrp
- Bump vulnerable dependencies flagged by ECR image scanning (#23813) by @charlesBochet
- Add nested relation Field widgets on record page layouts (#23815) by @FelixMalfait
- Feat/list view type (#23829) by @neo773
- Self-host every font instead of loading them from Google (#23859) by @FelixMalfait
- Add full-page AI chat mode with records as side panel artifacts (#23929) by @FelixMalfait
- Add List View lab icon and make lab feature flag icons mandatory (#23930) by @FelixMalfait
- Make LIST a widget layout instead of a table in disguise (#23940) by @FelixMalfait
🎉 New contributors
- @blockgroot made their first contribution in #23758
- @Dumeng made their first contribution in #23913
Full changelog (23 PRs)
- Make subdomain minimum length configurable via env var (#23209) by @ijreilly
- Add messages support to runAgent for multi-turn bot conversations (#23395) by @abdulrahmancodes
- feat(run-agent): let apps run an agent on behalf of a workspace member (#23470) by @abdulrahmancodes
- Add a book-a-call onboarding step for qualified leads (#23521) by @bosiraphael
- Feat/advanced text editor capability presets (#23657) by @ijreilly
- chore: bump version to 2.28.0 (#23730) by @twenty-pr
- feat(workflow): dispatch automated triggers from core behind a flag (#23775) by @thomtrp
- fix(twenty-server): stop the yarn-install Lambda from running out of memory (#23805) by @charlesBochet
- Bump vulnerable dependencies flagged by ECR image scanning (#23813) by @charlesBochet
- Add nested relation Field widgets on record page layouts (#23815) by @FelixMalfait
- chore: bump version to 2.29.0 (#23820) by @twenty-pr
- Feat/list view type (#23829) by @neo773
- Self-host every font instead of loading them from Google (#23859) by @FelixMalfait
- Add call recording transcript and summary widget types (#23864) by @ehconitin
- Revert "Make subdomain minimum length configurable via env var" (#23871) by @ijreilly
- perf(server): compact and cold-store workspace cache payloads behind a feature flag (#23880) by @charlesBochet
- Gate the workspace setup AI chat to workspace creators (#23881) by @bosiraphael
- chore: bump version to 2.30.0 (#23914) by @twenty-pr
- Remove deprecated subdomainMinLength from ClientConfig (#23915) by @ijreilly
- [BREAKING CHANGE] refactor(server): migrate the metadata API off nestjs-query (#23925) by @abdulrahmancodes
- Add full-page AI chat mode with records as side panel artifacts (#23929) by @FelixMalfait
- Add List View lab icon and make lab feature flag icons mandatory (#23930) by @FelixMalfait
- Make LIST a widget layout instead of a table in disguise (#23940) by @FelixMalfait
Full Changelog: sdk/v2.27.0...sdk/v2.30.0