Skip to content

Enfyra Server v2.1.1

Choose a tag to compare

@dothinh115 dothinh115 released this 27 Apr 00:51

Enfyra Server v2.1.1

Features

  • Added the query DSL kernel under src/kernel/query with join registry, logical filter operators, query planning, deep option validation, and shared SQL/Mongo query execution exports.
  • Added OAuth user provisioning scripts to oauth_config_definition, allowing admins to return an object that is merged into newly created OAuth users while protected identity fields such as email keep server-owned values.
  • Added sourceCode, scriptLanguage, and generated compiledCode support for oauth_config_definition so OAuth provisioning scripts use the same TypeScript-first script model as other programmable definitions.
  • Added generic script execution to /admin/test/run with kind: "script", current-user context, cache access, and repository macros so the app can test code editor scripts through the executor engine.
  • Added normalized index exports across kernel, engine, domain, shared, and module folders so internal services can consume query, execution, cache, bootstrap, and module APIs through stable package boundaries.

Bug Fixes

  • Fixed OAuth config cache normalization in src/engine/cache/services/oauth-config-cache.service.ts so provisioning script fields are available to OAuth login without reading raw table data from the request path.
  • Fixed OAuth user creation in src/domain/auth/services/oauth.service.ts so empty provisioning scripts are skipped, non-object script results fail clearly, and provisioning output cannot override server-owned OAuth identity fields.
  • Updated dynamic repository and query service wiring so route handlers, flow steps, GraphQL, table management, and tests use the src/kernel/query and src/kernel/execution runtime locations consistently.
  • Improved /admin/test/run script error responses so failed script tests return structured { success: false, error, logs } payloads instead of leaking executor failures through the route handler.