@appaflytech/zeyrek-ai-mcp 0.0.28 → 0.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/.env.example +15 -0
  2. package/README.md +5 -5
  3. package/dist/config.js +37 -0
  4. package/dist/index.js +2 -0
  5. package/dist/knowledge/access.js +802 -0
  6. package/dist/knowledge/backendConstraints.js +18 -1
  7. package/dist/knowledge/case.js +41 -0
  8. package/dist/knowledge/componentCatalog.js +494 -34
  9. package/dist/knowledge/componentEvents.js +132 -7
  10. package/dist/knowledge/connectDataBind.js +819 -0
  11. package/dist/knowledge/connectDataDefinition.js +341 -0
  12. package/dist/knowledge/connectDataExecute.js +93 -0
  13. package/dist/knowledge/connectDataRules.js +128 -0
  14. package/dist/knowledge/decision.js +121 -0
  15. package/dist/knowledge/expressionPrelude.js +59 -0
  16. package/dist/knowledge/layoutSummary.js +140 -2
  17. package/dist/knowledge/microserviceParameters.js +58 -0
  18. package/dist/knowledge/mining.js +94 -0
  19. package/dist/knowledge/mobileComponentCatalog.js +859 -0
  20. package/dist/knowledge/mobileComponentEvents.js +239 -0
  21. package/dist/knowledge/normalize.js +236 -67
  22. package/dist/knowledge/outlines.js +36 -0
  23. package/dist/knowledge/platform/lint.js +385 -0
  24. package/dist/knowledge/platform/mobile.js +142 -0
  25. package/dist/knowledge/platform/mobileLayoutLint.js +324 -0
  26. package/dist/knowledge/platform/mobileRules.js +231 -0
  27. package/dist/knowledge/platform/mobileSpacing.js +82 -0
  28. package/dist/knowledge/platform/mobileTabs.js +108 -0
  29. package/dist/knowledge/platform/nativeBoxModel.js +44 -0
  30. package/dist/knowledge/platform/profile.js +25 -0
  31. package/dist/knowledge/platform/resolve.js +122 -0
  32. package/dist/knowledge/platform/web.js +39 -0
  33. package/dist/knowledge/policy.js +18 -4
  34. package/dist/knowledge/process.js +510 -0
  35. package/dist/knowledge/reservedTables.js +79 -0
  36. package/dist/knowledge/rowFilter.js +43 -0
  37. package/dist/knowledge/rules.js +319 -21
  38. package/dist/knowledge/schemaGuard.js +11 -0
  39. package/dist/knowledge/styleResolve.js +50 -4
  40. package/dist/knowledge/styleResolveNative.js +527 -0
  41. package/dist/knowledge/themeResolve.js +3 -3
  42. package/dist/observability/trace.js +6 -3
  43. package/dist/platform/argumentAliases.js +128 -0
  44. package/dist/platform/bodyFile.js +103 -0
  45. package/dist/platform/capture/actions.js +333 -0
  46. package/dist/platform/capture/browser.js +1 -0
  47. package/dist/platform/{screenshot.js → capture/capture.js} +105 -519
  48. package/dist/platform/capture/console-log.js +122 -0
  49. package/dist/platform/capture/index.js +11 -0
  50. package/dist/platform/capture/readiness.js +103 -0
  51. package/dist/platform/capture/summary.js +77 -0
  52. package/dist/platform/capture/target.js +5 -0
  53. package/dist/platform/capture/targets/studio-mobile.js +15 -0
  54. package/dist/platform/capture/targets/studio-web.js +5 -0
  55. package/dist/platform/diagnostics.js +10 -4
  56. package/dist/platform/domSummary.js +1 -1
  57. package/dist/platform/errors.js +162 -10
  58. package/dist/platform/http.js +29 -8
  59. package/dist/platform/impersonation.js +45 -0
  60. package/dist/platform/jsonArray.js +24 -0
  61. package/dist/platform/responses.js +39 -5
  62. package/dist/platform/schemaReadMemory.js +60 -0
  63. package/dist/platform/secrets.js +17 -1
  64. package/dist/platform/strictArguments.js +68 -12
  65. package/dist/platform/tokenVault.js +187 -4
  66. package/dist/resources/examples/bpm-gorev-kontrol.json +294 -0
  67. package/dist/resources/examples/bpm-iso-dokuman.json +228 -0
  68. package/dist/resources/examples/bpm-satinalma.json +376 -0
  69. package/dist/resources/examples/connect-data-convert-verify.json +107 -0
  70. package/dist/resources/examples/connect-data-dropdown-roles.json +66 -0
  71. package/dist/resources/examples/connect-data-edit-m2m.json +73 -0
  72. package/dist/resources/examples/connect-data-query-params.json +50 -0
  73. package/dist/resources/examples/connect-data-table-entity.json +147 -0
  74. package/dist/resources/examples/connect-data-workflow-microservice.json +65 -0
  75. package/dist/resources/examples/mobile-app-shell-drawer.json +243 -0
  76. package/dist/resources/examples/mobile-app-shell-stack.json +157 -0
  77. package/dist/resources/examples/mobile-app-shell-tab.json +208 -0
  78. package/dist/resources/examples/mobile-form-screen.json +365 -0
  79. package/dist/resources/examples/mobile-list-detail-form.json +672 -0
  80. package/dist/resources/examples/page-detail-profile.json +2 -1
  81. package/dist/resources/examples/page-dynamic-form.json +3 -2
  82. package/dist/resources/examples/page-flex-sections.json +1 -1
  83. package/dist/resources/examples/page-html-embed.json +1 -1
  84. package/dist/resources/examples/workflow-basic.json +8 -2
  85. package/dist/resources/guides/access.md +796 -0
  86. package/dist/resources/guides/bpm.md +686 -0
  87. package/dist/resources/guides/case.md +153 -0
  88. package/dist/resources/guides/component.md +91 -4
  89. package/dist/resources/guides/decision.md +185 -0
  90. package/dist/resources/guides/entity.md +50 -8
  91. package/dist/resources/guides/expressions.md +14 -5
  92. package/dist/resources/guides/functions.md +1 -1
  93. package/dist/resources/guides/getting-started.md +38 -1
  94. package/dist/resources/guides/layout.md +11 -7
  95. package/dist/resources/guides/microservice.md +81 -2
  96. package/dist/resources/guides/middleware.md +44 -2
  97. package/dist/resources/guides/mobile-layout.md +193 -0
  98. package/dist/resources/guides/mobile.md +495 -0
  99. package/dist/resources/guides/page.md +454 -75
  100. package/dist/resources/guides/theme.md +8 -2
  101. package/dist/resources/guides/translation.md +1 -1
  102. package/dist/resources/guides/workflow.md +58 -1
  103. package/dist/resources/read.js +41 -0
  104. package/dist/resources/rules.js +11 -5
  105. package/dist/resources/schema-fingerprint.json +7 -5
  106. package/dist/resources/schemas/AccessExplanationDto.json +144 -0
  107. package/dist/resources/schemas/AccessMatrixDto.json +170 -0
  108. package/dist/resources/schemas/AccessPermissionDto.json +57 -0
  109. package/dist/resources/schemas/AccessPolicyDto.json +223 -0
  110. package/dist/resources/schemas/AccessResourceDto.json +86 -0
  111. package/dist/resources/schemas/AppSessionDto.json +53 -0
  112. package/dist/resources/schemas/ConnectDataDescribeDto.json +344 -0
  113. package/dist/resources/schemas/ConnectDataRequestModel.json +202 -0
  114. package/dist/resources/schemas/ConnectDataResultDto.json +421 -0
  115. package/dist/resources/schemas/ConnectorCredentialDto.json +70 -0
  116. package/dist/resources/schemas/ConvertConnectDataToMicroserviceCommand.json +37 -0
  117. package/dist/resources/schemas/CreateAccessPolicyCommand.json +209 -0
  118. package/dist/resources/schemas/CreateDecisionCommand.json +221 -0
  119. package/dist/resources/schemas/CreateEntityCommand.json +118 -0
  120. package/dist/resources/schemas/CreateMicroserviceCommand.json +13 -1
  121. package/dist/resources/schemas/CreateProcessDefinitionCommand.json +1337 -0
  122. package/dist/resources/schemas/CreateQueryCommand.json +4 -0
  123. package/dist/resources/schemas/CreateWorkflowCommand.json +143 -1
  124. package/dist/resources/schemas/DataJobDto.json +6 -1
  125. package/dist/resources/schemas/DecisionDto.json +302 -0
  126. package/dist/resources/schemas/DetachConnectDataMicroserviceCommand.json +28 -0
  127. package/dist/resources/schemas/ExplainAccessQuery.json +33 -0
  128. package/dist/resources/schemas/GenerateProcessDocumentCommand.json +116 -0
  129. package/dist/resources/schemas/GlobalFunctionUpdateResultDto.json +21 -1
  130. package/dist/resources/schemas/MicroserviceDto.json +15 -3
  131. package/dist/resources/schemas/OrganizationProjectDto.json +335 -0
  132. package/dist/resources/schemas/OrganizationSchemaDto.json +196 -0
  133. package/dist/resources/schemas/OrganizationSchemaVersionDto.json +207 -0
  134. package/dist/resources/schemas/PatchProcessDefinitionCommand.json +76 -0
  135. package/dist/resources/schemas/PreviewMicroserviceCommand.json +10 -1
  136. package/dist/resources/schemas/PreviewWorkflowCommand.json +22 -1
  137. package/dist/resources/schemas/ProcessDefinitionDto.json +1480 -0
  138. package/dist/resources/schemas/ProcessSimulationDto.json +96 -0
  139. package/dist/resources/schemas/SaveConnectorCredentialCommand.json +90 -0
  140. package/dist/resources/schemas/SaveProcessEventSourceCommand.json +61 -0
  141. package/dist/resources/schemas/SaveProcessMailSourceCommand.json +89 -0
  142. package/dist/resources/schemas/SignProcessTaskCommand.json +73 -0
  143. package/dist/resources/schemas/SimulateProcessDefinitionQuery.json +92 -0
  144. package/dist/resources/schemas/StepDto.json +22 -1
  145. package/dist/resources/schemas/UpdateAccessPolicyCommand.json +209 -0
  146. package/dist/resources/schemas/UpdateDecisionCommand.json +216 -0
  147. package/dist/resources/schemas/UpdateEntityCommand.json +118 -0
  148. package/dist/resources/schemas/UpdateMicroserviceCommand.json +13 -1
  149. package/dist/resources/schemas/UpdateProcessDefinitionCommand.json +1357 -0
  150. package/dist/resources/schemas/UpdateQueryCommand.json +4 -0
  151. package/dist/resources/schemas/UpdateViewCommand.json +0 -2
  152. package/dist/resources/schemas/UpdateWorkflowCommand.json +143 -1
  153. package/dist/resources/schemas/ValidateProcessDefinitionQuery.json +1339 -0
  154. package/dist/server.js +27 -1
  155. package/dist/tools/access.js +369 -2
  156. package/dist/tools/accessOperations.js +135 -0
  157. package/dist/tools/accessPolicies.js +170 -0
  158. package/dist/tools/accessRuntime.js +203 -0
  159. package/dist/tools/applications.js +60 -3
  160. package/dist/tools/bpm.js +343 -0
  161. package/dist/tools/bpmGovernance.js +266 -0
  162. package/dist/tools/bpmOperations.js +230 -0
  163. package/dist/tools/bpmReporting.js +154 -0
  164. package/dist/tools/bpmRouting.js +150 -0
  165. package/dist/tools/bpmRuntime.js +396 -0
  166. package/dist/tools/case.js +178 -0
  167. package/dist/tools/caseRuntime.js +89 -0
  168. package/dist/tools/common.js +7 -0
  169. package/dist/tools/components.js +118 -14
  170. package/dist/tools/connectData.js +449 -0
  171. package/dist/tools/connectors.js +193 -0
  172. package/dist/tools/datasources.js +3 -3
  173. package/dist/tools/decisions.js +206 -0
  174. package/dist/tools/dependencies.js +1 -1
  175. package/dist/tools/deployments.js +2 -2
  176. package/dist/tools/designSchemaPatch.js +34 -9
  177. package/dist/tools/dtos.js +36 -5
  178. package/dist/tools/entities.js +79 -12
  179. package/dist/tools/externalComponents.js +26 -5
  180. package/dist/tools/flows.js +122 -14
  181. package/dist/tools/folders.js +1 -1
  182. package/dist/tools/imports.js +5 -2
  183. package/dist/tools/layouts.js +50 -17
  184. package/dist/tools/merges.js +1 -1
  185. package/dist/tools/microservices.js +77 -25
  186. package/dist/tools/mobile.js +221 -0
  187. package/dist/tools/modules.js +48 -0
  188. package/dist/tools/organizationStructure.js +137 -0
  189. package/dist/tools/pages.js +465 -98
  190. package/dist/tools/platformInfo.js +27 -8
  191. package/dist/tools/profileWrite.js +92 -0
  192. package/dist/tools/projects.js +71 -9
  193. package/dist/tools/rows.js +69 -13
  194. package/dist/tools/schemaOps.js +61 -1
  195. package/dist/tools/screenWrite.js +37 -8
  196. package/dist/tools/screens.js +95 -5
  197. package/dist/tools/templates.js +26 -1
  198. package/dist/tools/translations.js +1 -1
  199. package/dist/tools/variables.js +11 -5
  200. package/dist/tools/workflows.js +10 -5
  201. package/package.json +2 -2
@@ -639,6 +639,14 @@ function projectCreateFindings(body) {
639
639
  }
640
640
  return [];
641
641
  }
642
+ function projectSlugFindings(body) {
643
+ if (body.slug === undefined || body.slug === null)
644
+ return [];
645
+ const slug = String(body.slug);
646
+ return /^[a-z0-9]+([-_][a-z0-9]+)*$/.test(slug) && slug.length >= 2 && slug.length <= 40
647
+ ? []
648
+ : [`slug: '${slug}' veritabanı ve rol adının parçası olur (zeyrek_<org>_<slug>, <org>_<slug>__<ortam>) — 2–40 karakter, yalnız küçük harf ve rakam, parçalar arasında tek '-' ya da '_' (örn. 'satis-crm', 'satis_crm'); '__', tırnak, boşluk ve büyük harf reddedilir.`];
649
+ }
642
650
  function languageFindings(label, codes) {
643
651
  const unknown = codes.filter(code => !SUPPORTED_LANGUAGES.includes(code));
644
652
  return unknown.length === 0
@@ -818,9 +826,18 @@ export const backendRules = [
818
826
  commands: { create: 'CreateOrganizationProjectCommand' },
819
827
  status: 409,
820
828
  summary: "templateOptions yoksa application zorunlu · slug organizasyonda tekil (veritabanı adı zeyrek_<org>_<slug>; çakışma eski build'de 500, 2026-09-08 sonrası 409)",
821
- sourceRef: "CreateOrganizationProjectCommandValidator: When(TemplateOptions null) Application.NotNull(); OrganizationProjectService.CreateAsync: ExistsByOrganizationAndDatabaseNameAsync ⇒ DatabaseNameAlreadyExistsException (ExceptionHandler eşlemesi 2026-09-08'de 409'a alındı). Gateway POST'tan önce project_list ile slug'ı arar. Ölçüm: 2026-09-08 3. koşu S-1 / P3-7",
829
+ sourceRef: "CreateOrganizationProjectCommandValidator: When(TemplateOptions null) Application.NotNull(); OrganizationProjectService.CreateAsync: ExistsByDatabaseNameAsync (organizasyonlar arası, 2026-09-25) ⇒ DatabaseNameAlreadyExistsException (ExceptionHandler eşlemesi 2026-09-08'de 409'a alındı). Gateway POST'tan önce project_list ile slug'ı arar. Ölçüm: 2026-09-08 3. koşu S-1 / P3-7",
822
830
  check: body => projectCreateFindings(body)
823
831
  },
832
+ {
833
+ id: 'PRJ-005',
834
+ module: 'project',
835
+ commands: { create: 'CreateOrganizationProjectCommand' },
836
+ status: 422,
837
+ summary: "slug ^[a-z0-9]+([-_][a-z0-9]+)*$, 2–40 (veritabanı ve rol adının parçası; '__' ortam rolü ayırıcısı olduğu için yasak) · zeyrek_<org>_<slug> ≤ 63 bayt, organizasyonlar arası tekil",
838
+ sourceRef: "CreateOrganizationProjectCommandValidator: Slug.Length(DatabaseSlugMinLength, DatabaseSlugMaxLength).Matches(DatabaseSlugPattern); OrganizationProjectService.CreateAsync: DatabaseSettings.IsDatabaseSlug ⇒ DatabaseSlugInvalidException (422, her oluşturma yolu — içe aktarma dahil), DatabaseNameTooLongException (422), ExistsByDatabaseNameAsync ⇒ DatabaseNameAlreadyExistsException (409). Güncellemede kural yalnız slug DEĞİŞİRSE serviste işler (eski slug'lı projeler güncellenebilsin; gateway PRJ-004 gereği her project_update gövdesine mevcut slug'ı koyar, bu yüzden gateway update'te bloklamaz). K-21, 2026-09-25",
839
+ check: body => projectSlugFindings(body)
840
+ },
824
841
  {
825
842
  id: 'PRJ-002',
826
843
  module: 'project',
@@ -0,0 +1,41 @@
1
+ const guide = 'ngapps://guides/case';
2
+ function asObjects(value) {
3
+ return (Array.isArray(value) ? value : []).filter((entry) => Boolean(entry) && typeof entry === 'object' && !Array.isArray(entry));
4
+ }
5
+ function asStrings(value) {
6
+ return (Array.isArray(value) ? value : []).filter((entry) => typeof entry === 'string');
7
+ }
8
+ /**
9
+ * CASE-001: sentry `onPart.source` bir plan öğesi ya da vaka dosyası öğesi, `entry`/`exit` bir sentry kimliği olmalı.
10
+ * Backend `CaseValidator` aynı başvuruları yazımda 422 CaseInvalid ile reddeder; gateway istek gitmeden hepsini tek bulguda sayar.
11
+ */
12
+ export function caseFindings(caseModel) {
13
+ const planItemIds = new Set(asObjects(caseModel.planItems).map(planItem => String(planItem.id ?? '')));
14
+ const caseFileIds = new Set(asObjects(caseModel.caseFile).map(caseFileItem => String(caseFileItem.id ?? '')));
15
+ const sentries = asObjects(caseModel.sentries);
16
+ const sentryIds = new Set(sentries.map(sentry => String(sentry.id ?? '')));
17
+ const problems = [];
18
+ for (const sentry of sentries) {
19
+ for (const onPart of asObjects(sentry.onParts)) {
20
+ const source = String(onPart.source ?? '');
21
+ if (!planItemIds.has(source) && !caseFileIds.has(source))
22
+ problems.push(`sentry '${String(sentry.id)}' onPart.source '${source}' tanımsız`);
23
+ }
24
+ }
25
+ for (const planItem of asObjects(caseModel.planItems)) {
26
+ for (const field of ['entry', 'exit']) {
27
+ for (const sentryId of asStrings(planItem[field])) {
28
+ if (!sentryIds.has(sentryId))
29
+ problems.push(`plan öğesi '${String(planItem.id)}' ${field} sentry '${sentryId}' tanımsız`);
30
+ }
31
+ }
32
+ }
33
+ return problems.length === 0
34
+ ? []
35
+ : [{
36
+ ruleId: 'CASE-001',
37
+ severity: 'block',
38
+ message: `Vaka başvurusu çözülmedi: ${problems.join('; ')}. onPart.source bir planItems[].id ya da caseFile[].id, entry/exit bir sentries[].id olmalı; platform 422 CaseInvalid döner.`,
39
+ guide
40
+ }];
41
+ }