@futdevpro/fsm-dynamo 1.15.15 → 1.15.17

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 (139) hide show
  1. package/.dynamo/pipeline.cicd.config.json +128 -0
  2. package/build/_collections/utils/require-env.util.d.ts +3 -3
  3. package/build/_collections/utils/require-env.util.js +2 -2
  4. package/build/_models/interfaces/environment/global-settings.interface.d.ts +1 -1
  5. package/build/_modules/ai/_collections/ai-model-registry.util.d.ts +24 -0
  6. package/build/_modules/ai/_collections/ai-model-registry.util.d.ts.map +1 -0
  7. package/build/_modules/ai/_collections/ai-model-registry.util.js +31 -0
  8. package/build/_modules/ai/_collections/ai-model-registry.util.js.map +1 -0
  9. package/build/_modules/ai/_enums/ai-message-role.enum.d.ts +3 -1
  10. package/build/_modules/ai/_enums/ai-message-role.enum.d.ts.map +1 -1
  11. package/build/_modules/ai/_enums/ai-message-role.enum.js +2 -0
  12. package/build/_modules/ai/_enums/ai-message-role.enum.js.map +1 -1
  13. package/build/_modules/ai/_enums/ai-model-type.enum.d.ts +3 -1
  14. package/build/_modules/ai/_enums/ai-model-type.enum.d.ts.map +1 -1
  15. package/build/_modules/ai/_enums/ai-model-type.enum.js +2 -0
  16. package/build/_modules/ai/_enums/ai-model-type.enum.js.map +1 -1
  17. package/build/_modules/ai/_models/ai-call-settings.interface.d.ts +21 -0
  18. package/build/_modules/ai/_models/ai-call-settings.interface.d.ts.map +1 -1
  19. package/build/_modules/ai/_models/ai-call-settings.interface.js +21 -0
  20. package/build/_modules/ai/_models/ai-call-settings.interface.js.map +1 -1
  21. package/build/_modules/ai/_models/ai-llm-response.interface.d.ts +5 -0
  22. package/build/_modules/ai/_models/ai-llm-response.interface.d.ts.map +1 -1
  23. package/build/_modules/ai/_models/ai-message.interface.d.ts +5 -0
  24. package/build/_modules/ai/_models/ai-message.interface.d.ts.map +1 -1
  25. package/build/_modules/ai/_models/ai-model-capabilities.interface.d.ts +28 -0
  26. package/build/_modules/ai/_models/ai-model-capabilities.interface.d.ts.map +1 -0
  27. package/build/_modules/ai/_models/ai-model-capabilities.interface.js +3 -0
  28. package/build/_modules/ai/_models/ai-model-capabilities.interface.js.map +1 -0
  29. package/build/_modules/ai/_models/ai-model-info.interface.d.ts +62 -0
  30. package/build/_modules/ai/_models/ai-model-info.interface.d.ts.map +1 -0
  31. package/build/_modules/ai/_models/ai-model-info.interface.js +3 -0
  32. package/build/_modules/ai/_models/ai-model-info.interface.js.map +1 -0
  33. package/build/_modules/ai/_models/ai-model-settings-schema.interface.d.ts +52 -0
  34. package/build/_modules/ai/_models/ai-model-settings-schema.interface.d.ts.map +1 -0
  35. package/build/_modules/ai/_models/ai-model-settings-schema.interface.js +3 -0
  36. package/build/_modules/ai/_models/ai-model-settings-schema.interface.js.map +1 -0
  37. package/build/_modules/ai/_models/ai-tool-call.interface.d.ts +19 -0
  38. package/build/_modules/ai/_models/ai-tool-call.interface.d.ts.map +1 -0
  39. package/build/_modules/ai/_models/ai-tool-call.interface.js +3 -0
  40. package/build/_modules/ai/_models/ai-tool-call.interface.js.map +1 -0
  41. package/build/_modules/ai/_models/ai-tool-handler.type.d.ts +11 -0
  42. package/build/_modules/ai/_models/ai-tool-handler.type.d.ts.map +1 -0
  43. package/build/_modules/ai/_models/ai-tool-handler.type.js +3 -0
  44. package/build/_modules/ai/_models/ai-tool-handler.type.js.map +1 -0
  45. package/build/_modules/ai/_models/ai-tool-result.interface.d.ts +17 -0
  46. package/build/_modules/ai/_models/ai-tool-result.interface.d.ts.map +1 -0
  47. package/build/_modules/ai/_models/ai-tool-result.interface.js +3 -0
  48. package/build/_modules/ai/_models/ai-tool-result.interface.js.map +1 -0
  49. package/build/_modules/ai/_models/ai-tool.interface.d.ts +17 -0
  50. package/build/_modules/ai/_models/ai-tool.interface.d.ts.map +1 -0
  51. package/build/_modules/ai/_models/ai-tool.interface.js +3 -0
  52. package/build/_modules/ai/_models/ai-tool.interface.js.map +1 -0
  53. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.d.ts +14 -0
  54. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.d.ts.map +1 -0
  55. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js +80 -0
  56. package/build/_modules/ai/_modules/anthropic/_collections/aai-models.const.js.map +1 -0
  57. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.d.ts +4 -0
  58. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.d.ts.map +1 -1
  59. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.js +7 -0
  60. package/build/_modules/ai/_modules/anthropic/_enums/aai-model.enum.js.map +1 -1
  61. package/build/_modules/ai/_modules/anthropic/index.d.ts +1 -0
  62. package/build/_modules/ai/_modules/anthropic/index.d.ts.map +1 -1
  63. package/build/_modules/ai/_modules/anthropic/index.js +2 -0
  64. package/build/_modules/ai/_modules/anthropic/index.js.map +1 -1
  65. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts +12 -0
  66. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.d.ts.map +1 -0
  67. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js +35 -0
  68. package/build/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.js.map +1 -0
  69. package/build/_modules/ai/_modules/fdp-ai/index.d.ts +1 -0
  70. package/build/_modules/ai/_modules/fdp-ai/index.d.ts.map +1 -1
  71. package/build/_modules/ai/_modules/fdp-ai/index.js +2 -0
  72. package/build/_modules/ai/_modules/fdp-ai/index.js.map +1 -1
  73. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.d.ts +13 -0
  74. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.d.ts.map +1 -0
  75. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.js +97 -0
  76. package/build/_modules/ai/_modules/google-ai/_collections/gai-models.const.js.map +1 -0
  77. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.d.ts +4 -0
  78. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.d.ts.map +1 -1
  79. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.js +8 -1
  80. package/build/_modules/ai/_modules/google-ai/_enums/gai-model.enum.js.map +1 -1
  81. package/build/_modules/ai/_modules/google-ai/index.d.ts +1 -0
  82. package/build/_modules/ai/_modules/google-ai/index.d.ts.map +1 -1
  83. package/build/_modules/ai/_modules/google-ai/index.js +2 -0
  84. package/build/_modules/ai/_modules/google-ai/index.js.map +1 -1
  85. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts +13 -0
  86. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.d.ts.map +1 -0
  87. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js +53 -0
  88. package/build/_modules/ai/_modules/local-ai/_collections/lai-models.const.js.map +1 -0
  89. package/build/_modules/ai/_modules/local-ai/index.d.ts +1 -0
  90. package/build/_modules/ai/_modules/local-ai/index.d.ts.map +1 -1
  91. package/build/_modules/ai/_modules/local-ai/index.js +2 -0
  92. package/build/_modules/ai/_modules/local-ai/index.js.map +1 -1
  93. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.d.ts +13 -0
  94. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.d.ts.map +1 -0
  95. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js +240 -0
  96. package/build/_modules/ai/_modules/open-ai/_collections/oai-models.const.js.map +1 -0
  97. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.d.ts +8 -0
  98. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.d.ts.map +1 -1
  99. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.js +10 -0
  100. package/build/_modules/ai/_modules/open-ai/_enums/oai-model.enum.js.map +1 -1
  101. package/build/_modules/ai/_modules/open-ai/index.d.ts +1 -0
  102. package/build/_modules/ai/_modules/open-ai/index.d.ts.map +1 -1
  103. package/build/_modules/ai/_modules/open-ai/index.js +1 -0
  104. package/build/_modules/ai/_modules/open-ai/index.js.map +1 -1
  105. package/build/_modules/ai/index.d.ts +8 -0
  106. package/build/_modules/ai/index.d.ts.map +1 -1
  107. package/build/_modules/ai/index.js +8 -0
  108. package/build/_modules/ai/index.js.map +1 -1
  109. package/package.json +1 -1
  110. package/src/_collections/utils/require-env.util.ts +3 -3
  111. package/src/_models/interfaces/environment/global-settings.interface.ts +1 -1
  112. package/src/_modules/ai/_collections/ai-model-registry.util.spec.ts +37 -0
  113. package/src/_modules/ai/_collections/ai-model-registry.util.ts +30 -0
  114. package/src/_modules/ai/_enums/ai-message-role.enum.ts +2 -0
  115. package/src/_modules/ai/_enums/ai-model-type.enum.ts +2 -0
  116. package/src/_modules/ai/_models/ai-call-settings.interface.ts +21 -0
  117. package/src/_modules/ai/_models/ai-llm-response.interface.ts +5 -0
  118. package/src/_modules/ai/_models/ai-message.interface.ts +5 -0
  119. package/src/_modules/ai/_models/ai-model-capabilities.interface.ts +27 -0
  120. package/src/_modules/ai/_models/ai-model-info.interface.ts +63 -0
  121. package/src/_modules/ai/_models/ai-model-settings-schema.interface.ts +52 -0
  122. package/src/_modules/ai/_models/ai-tool-call.interface.ts +18 -0
  123. package/src/_modules/ai/_models/ai-tool-handler.type.ts +11 -0
  124. package/src/_modules/ai/_models/ai-tool-result.interface.ts +16 -0
  125. package/src/_modules/ai/_models/ai-tool.interface.ts +16 -0
  126. package/src/_modules/ai/_modules/anthropic/_collections/aai-models.const.ts +78 -0
  127. package/src/_modules/ai/_modules/anthropic/_enums/aai-model.enum.ts +8 -0
  128. package/src/_modules/ai/_modules/anthropic/index.ts +3 -0
  129. package/src/_modules/ai/_modules/fdp-ai/_collections/fdpai-models.const.ts +33 -0
  130. package/src/_modules/ai/_modules/fdp-ai/index.ts +3 -0
  131. package/src/_modules/ai/_modules/google-ai/_collections/gai-models.const.ts +95 -0
  132. package/src/_modules/ai/_modules/google-ai/_enums/gai-model.enum.ts +9 -1
  133. package/src/_modules/ai/_modules/google-ai/index.ts +3 -0
  134. package/src/_modules/ai/_modules/local-ai/_collections/lai-models.const.ts +51 -0
  135. package/src/_modules/ai/_modules/local-ai/index.ts +3 -0
  136. package/src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts +241 -0
  137. package/src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts +11 -0
  138. package/src/_modules/ai/_modules/open-ai/index.ts +1 -0
  139. package/src/_modules/ai/index.ts +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/local-ai/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AAGxC,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/local-ai/index.ts"],"names":[],"mappings":"AACA,cAAc,iCAAiC,CAAC;AAGhD,cAAc,yBAAyB,CAAC;AAGxC,cAAc,wCAAwC,CAAC;AACvD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sCAAsC,CAAC"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
+ // COLLECTIONS
5
+ tslib_1.__exportStar(require("./_collections/lai-models.const"), exports);
4
6
  // ENUMS
5
7
  tslib_1.__exportStar(require("./_enums/lai-model.enum"), exports);
6
8
  // MODELS
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/local-ai/index.ts"],"names":[],"mappings":";;;AAAA,QAAQ;AACR,kEAAwC;AAExC,SAAS;AACT,iFAAuD;AACvD,oFAA0D;AAC1D,+EAAqD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/local-ai/index.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,0EAAgD;AAEhD,QAAQ;AACR,kEAAwC;AAExC,SAAS;AACT,iFAAuD;AACvD,oFAA0D;AAC1D,+EAAqD"}
@@ -0,0 +1,13 @@
1
+ import { DyFM_AI_ModelInfo } from '../../../_models/ai-model-info.interface';
2
+ /**
3
+ * OpenAI model registry — verified 2026-06-01 against developers.openai.com docs.
4
+ *
5
+ * Contains current GA + still-callable legacy models. Retired models are omitted;
6
+ * sunsetting ones carry `status: 'deprecated'` + `successorId` + `sunsetDate`.
7
+ *
8
+ * Tool-calling note: native function calling is universal across current OpenAI
9
+ * chat models. The `-pro` reasoning models support tools but NOT streaming and
10
+ * are Responses-API-only — reflected in `capabilities.streaming`.
11
+ */
12
+ export declare const DyFM_OAI_Models: DyFM_AI_ModelInfo[];
13
+ //# sourceMappingURL=oai-models.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oai-models.const.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,EAAE,iBAAiB,EAiO9C,CAAC"}
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DyFM_OAI_Models = void 0;
4
+ const ai_provider_enum_1 = require("../../../_enums/ai-provider.enum");
5
+ const ai_model_type_enum_1 = require("../../../_enums/ai-model-type.enum");
6
+ const oai_model_enum_1 = require("../_enums/oai-model.enum");
7
+ /**
8
+ * OpenAI model registry — verified 2026-06-01 against developers.openai.com docs.
9
+ *
10
+ * Contains current GA + still-callable legacy models. Retired models are omitted;
11
+ * sunsetting ones carry `status: 'deprecated'` + `successorId` + `sunsetDate`.
12
+ *
13
+ * Tool-calling note: native function calling is universal across current OpenAI
14
+ * chat models. The `-pro` reasoning models support tools but NOT streaming and
15
+ * are Responses-API-only — reflected in `capabilities.streaming`.
16
+ */
17
+ exports.DyFM_OAI_Models = [
18
+ // ── Chat / reasoning (current GA) ──
19
+ {
20
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt55,
21
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
22
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
23
+ displayName: 'GPT-5.5',
24
+ tier: 'flagship',
25
+ status: 'ga',
26
+ contextWindow: 1_050_000,
27
+ maxOutputTokens: 128_000,
28
+ capabilities: {
29
+ functionCalling: true,
30
+ vision: true,
31
+ streaming: true,
32
+ jsonMode: true,
33
+ audioInput: false,
34
+ audioOutput: false,
35
+ imageGeneration: false,
36
+ embeddings: false,
37
+ },
38
+ },
39
+ {
40
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt55_pro,
41
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
42
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
43
+ displayName: 'GPT-5.5 Pro',
44
+ tier: 'pro',
45
+ status: 'ga',
46
+ contextWindow: 1_050_000,
47
+ maxOutputTokens: 128_000,
48
+ capabilities: {
49
+ functionCalling: true,
50
+ vision: true,
51
+ streaming: false, // Responses-API-only, no streaming
52
+ jsonMode: true,
53
+ audioInput: false,
54
+ audioOutput: false,
55
+ imageGeneration: false,
56
+ embeddings: false,
57
+ },
58
+ },
59
+ {
60
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt54,
61
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
62
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
63
+ displayName: 'GPT-5.4',
64
+ tier: 'flagship',
65
+ status: 'ga',
66
+ contextWindow: 1_000_000,
67
+ maxOutputTokens: 128_000,
68
+ capabilities: {
69
+ functionCalling: true,
70
+ vision: true,
71
+ streaming: true,
72
+ jsonMode: true,
73
+ audioInput: false,
74
+ audioOutput: false,
75
+ imageGeneration: false,
76
+ embeddings: false,
77
+ },
78
+ },
79
+ {
80
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt54_mini,
81
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
82
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
83
+ displayName: 'GPT-5.4 mini',
84
+ tier: 'mini',
85
+ status: 'ga',
86
+ contextWindow: 400_000,
87
+ maxOutputTokens: 128_000,
88
+ capabilities: {
89
+ functionCalling: true,
90
+ vision: true,
91
+ streaming: true,
92
+ jsonMode: true,
93
+ audioInput: false,
94
+ audioOutput: false,
95
+ imageGeneration: false,
96
+ embeddings: false,
97
+ },
98
+ },
99
+ {
100
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt54_nano,
101
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
102
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
103
+ displayName: 'GPT-5.4 nano',
104
+ tier: 'nano',
105
+ status: 'ga',
106
+ contextWindow: 400_000,
107
+ maxOutputTokens: 128_000,
108
+ capabilities: {
109
+ functionCalling: true,
110
+ vision: true,
111
+ streaming: true,
112
+ jsonMode: true,
113
+ audioInput: false,
114
+ audioOutput: false,
115
+ imageGeneration: false,
116
+ embeddings: false,
117
+ },
118
+ },
119
+ {
120
+ id: oai_model_enum_1.DyFM_OAI_Model.o3_pro,
121
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
122
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
123
+ displayName: 'o3-pro',
124
+ tier: 'pro',
125
+ status: 'ga',
126
+ contextWindow: 200_000,
127
+ maxOutputTokens: 100_000,
128
+ capabilities: {
129
+ functionCalling: true,
130
+ vision: true,
131
+ streaming: false, // Responses-API-only, no streaming
132
+ jsonMode: true,
133
+ audioInput: false,
134
+ audioOutput: false,
135
+ imageGeneration: false,
136
+ embeddings: false,
137
+ },
138
+ },
139
+ // ── Chat (legacy-active, sunsetting) ──
140
+ {
141
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt4o,
142
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
143
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
144
+ displayName: 'GPT-4o',
145
+ tier: 'legacy',
146
+ status: 'deprecated',
147
+ successorId: oai_model_enum_1.DyFM_OAI_Model.gpt54_mini,
148
+ sunsetDate: '2026-10-23',
149
+ contextWindow: 128_000,
150
+ maxOutputTokens: 16_384,
151
+ capabilities: {
152
+ functionCalling: true,
153
+ vision: true,
154
+ streaming: true,
155
+ jsonMode: true,
156
+ audioInput: false,
157
+ audioOutput: false,
158
+ imageGeneration: false,
159
+ embeddings: false,
160
+ },
161
+ },
162
+ {
163
+ id: oai_model_enum_1.DyFM_OAI_Model.gpt4o_mini,
164
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
165
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Chat,
166
+ displayName: 'GPT-4o mini',
167
+ tier: 'legacy',
168
+ status: 'deprecated',
169
+ successorId: oai_model_enum_1.DyFM_OAI_Model.gpt54_mini,
170
+ sunsetDate: '2026-10-23',
171
+ contextWindow: 128_000,
172
+ maxOutputTokens: 16_384,
173
+ capabilities: {
174
+ functionCalling: true,
175
+ vision: true,
176
+ streaming: true,
177
+ jsonMode: true,
178
+ audioInput: false,
179
+ audioOutput: false,
180
+ imageGeneration: false,
181
+ embeddings: false,
182
+ },
183
+ },
184
+ // ── Embeddings (current GA) ──
185
+ {
186
+ id: oai_model_enum_1.DyFM_OAI_Model.textEmbedding_3Small,
187
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
188
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Embedding,
189
+ displayName: 'text-embedding-3-small',
190
+ status: 'ga',
191
+ contextWindow: 8_191,
192
+ capabilities: {
193
+ functionCalling: false,
194
+ vision: false,
195
+ streaming: false,
196
+ jsonMode: false,
197
+ audioInput: false,
198
+ audioOutput: false,
199
+ imageGeneration: false,
200
+ embeddings: true,
201
+ },
202
+ },
203
+ {
204
+ id: oai_model_enum_1.DyFM_OAI_Model.textEmbedding_3Large,
205
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
206
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Embedding,
207
+ displayName: 'text-embedding-3-large',
208
+ status: 'ga',
209
+ contextWindow: 8_191,
210
+ capabilities: {
211
+ functionCalling: false,
212
+ vision: false,
213
+ streaming: false,
214
+ jsonMode: false,
215
+ audioInput: false,
216
+ audioOutput: false,
217
+ imageGeneration: false,
218
+ embeddings: true,
219
+ },
220
+ },
221
+ // ── Image generation (current GA) ──
222
+ {
223
+ id: oai_model_enum_1.DyFM_OAI_Model.gptImage_2,
224
+ provider: ai_provider_enum_1.DyFM_AI_Provider.OpenAI,
225
+ modelType: ai_model_type_enum_1.DyFM_AI_ModelType.Image,
226
+ displayName: 'GPT Image 2',
227
+ status: 'ga',
228
+ capabilities: {
229
+ functionCalling: false,
230
+ vision: true, // accepts image input for editing
231
+ streaming: false,
232
+ jsonMode: false,
233
+ audioInput: false,
234
+ audioOutput: false,
235
+ imageGeneration: true,
236
+ embeddings: false,
237
+ },
238
+ },
239
+ ];
240
+ //# sourceMappingURL=oai-models.const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oai-models.const.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_collections/oai-models.const.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,14 @@
2
2
  * Models available through the OpenAI API.
3
3
  */
4
4
  export declare enum DyFM_OAI_Model {
5
+ gpt55 = "gpt-5.5",
6
+ gpt55_pro = "gpt-5.5-pro",
7
+ gpt54 = "gpt-5.4",
8
+ gpt54_mini = "gpt-5.4-mini",
9
+ gpt54_nano = "gpt-5.4-nano",
10
+ o3_pro = "o3-pro",
11
+ gptImage_2 = "gpt-image-2",
12
+ gptImage_1 = "gpt-image-1",
5
13
  gpt5 = "gpt-5",
6
14
  gpt51 = "gpt-5.1",
7
15
  gpt5_mini = "gpt-5-mini",
@@ -1 +1 @@
1
- {"version":3,"file":"oai-model.enum.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,oBAAY,cAAc;IAExB,IAAI,UAAU;IACd,KAAK,YAAY;IACjB,SAAS,eAAe;IACxB,SAAS,eAAe;IACxB,eAAe,sBAAsB;IACrC,gBAAgB,wBAAwB;IACxC,UAAU,gBAAgB;IAC1B,WAAW,kBAAkB;IAa7B,KAAK,WAAW,CAAE,0BAA0B;IAE5C,cAAc,sBAAsB,CAAE,6BAA6B;IAEnE,cAAc,sBAAsB,CAAE,0BAA0B;IAYhE,UAAU,gBAAgB,CAAE,6BAA6B;IAEzD,kBAAkB,2BAA2B,CAAE,gCAAgC;IAuB/E;;;OAGG;IACH,oBAAoB,2BAA2B,CAAE,wBAAwB;IACzE;;;OAGG;IACH,oBAAoB,2BAA2B,CAAE,wBAAwB;IACzE;;;OAGG;IACH,oBAAoB,2BAA2B;CAsEhD;AAED,MAAM,MAAM,uBAAuB,GACjC,cAAc,CAAC,oBAAoB,GACnC,cAAc,CAAC,oBAAoB,GACnC,cAAc,CAAC,oBAAoB,CAAC;AAEtC,eAAO,MAAM,2BAA2B,EAAE,uBAAuB,EAIhE,CAAC"}
1
+ {"version":3,"file":"oai-model.enum.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,oBAAY,cAAc;IAExB,KAAK,YAAY;IACjB,SAAS,gBAAgB;IACzB,KAAK,YAAY;IACjB,UAAU,iBAAiB;IAC3B,UAAU,iBAAiB;IAC3B,MAAM,WAAW;IAEjB,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAG1B,IAAI,UAAU;IACd,KAAK,YAAY;IACjB,SAAS,eAAe;IACxB,SAAS,eAAe;IACxB,eAAe,sBAAsB;IACrC,gBAAgB,wBAAwB;IACxC,UAAU,gBAAgB;IAC1B,WAAW,kBAAkB;IAa7B,KAAK,WAAW,CAAE,0BAA0B;IAE5C,cAAc,sBAAsB,CAAE,6BAA6B;IAEnE,cAAc,sBAAsB,CAAE,0BAA0B;IAYhE,UAAU,gBAAgB,CAAE,6BAA6B;IAEzD,kBAAkB,2BAA2B,CAAE,gCAAgC;IAuB/E;;;OAGG;IACH,oBAAoB,2BAA2B,CAAE,wBAAwB;IACzE;;;OAGG;IACH,oBAAoB,2BAA2B,CAAE,wBAAwB;IACzE;;;OAGG;IACH,oBAAoB,2BAA2B;CAsEhD;AAED,MAAM,MAAM,uBAAuB,GACjC,cAAc,CAAC,oBAAoB,GACnC,cAAc,CAAC,oBAAoB,GACnC,cAAc,CAAC,oBAAoB,CAAC;AAEtC,eAAO,MAAM,2BAA2B,EAAE,uBAAuB,EAIhE,CAAC"}
@@ -6,6 +6,16 @@ exports.DyFM_OAI_allEmbeddingModels = exports.DyFM_OAI_Model = void 0;
6
6
  */
7
7
  var DyFM_OAI_Model;
8
8
  (function (DyFM_OAI_Model) {
9
+ // GPT-5.5 / 5.4 (current flagships — verified 2026-06)
10
+ DyFM_OAI_Model["gpt55"] = "gpt-5.5";
11
+ DyFM_OAI_Model["gpt55_pro"] = "gpt-5.5-pro";
12
+ DyFM_OAI_Model["gpt54"] = "gpt-5.4";
13
+ DyFM_OAI_Model["gpt54_mini"] = "gpt-5.4-mini";
14
+ DyFM_OAI_Model["gpt54_nano"] = "gpt-5.4-nano";
15
+ DyFM_OAI_Model["o3_pro"] = "o3-pro";
16
+ // Image generation (current)
17
+ DyFM_OAI_Model["gptImage_2"] = "gpt-image-2";
18
+ DyFM_OAI_Model["gptImage_1"] = "gpt-image-1";
9
19
  // GPT-5
10
20
  DyFM_OAI_Model["gpt5"] = "gpt-5";
11
21
  DyFM_OAI_Model["gpt51"] = "gpt-5.1";
@@ -1 +1 @@
1
- {"version":3,"file":"oai-model.enum.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts"],"names":[],"mappings":";;;AAKA;;GAEG;AACH,IAAY,cAmJX;AAnJD,WAAY,cAAc;IACxB,QAAQ;IACR,gCAAc,CAAA;IACd,mCAAiB,CAAA;IACjB,0CAAwB,CAAA;IACxB,0CAAwB,CAAA;IACxB,uDAAqC,CAAA;IACrC,0DAAwC,CAAA;IACxC,4CAA0B,CAAA;IAC1B,+CAA6B,CAAA;IAC7B,6BAA6B,CAAC,iBAAiB;IAE/C,UAAU;IACV;;;;;+DAK2D;IAE3D,QAAQ;IACR,QAAQ;IACR,kCAAgB,CAAA;IAChB,oBAAoB;IACpB,sDAAoC,CAAA;IACpC,oBAAoB;IACpB,sDAAoC,CAAA;IAEpC;;;;;;iDAM6C;IAE7C,WAAW;IACX,cAAc;IACd,4CAA0B,CAAA;IAC1B,yBAAyB;IACzB,+DAA6C,CAAA;IAG7C,SAAS;IACT;;;qDAGiD;IAEjD,SAAS;IACT;;;+BAG2B;IAE3B,uBAAuB;IACvB;;;;+BAI2B;IAE3B,kBAAkB;IAClB;;;OAGG;IACH,iEAA+C,CAAA;IAC/C;;;OAGG;IACH,iEAA+C,CAAA;IAC/C;;;OAGG;IACH,iEAA+C,CAAA;IAE/C;;uDAEmD;IAEnD,sBAAsB;IACtB;;wDAEoD;IAGpD,iCAAiC;IAYjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCA6C8B;AAChC,CAAC,EAnJW,cAAc,8BAAd,cAAc,QAmJzB;AAOY,QAAA,2BAA2B,GAA8B;IACpE,cAAc,CAAC,oBAAoB;IACnC,cAAc,CAAC,oBAAoB;IACnC,cAAc,CAAC,oBAAoB;CACpC,CAAC"}
1
+ {"version":3,"file":"oai-model.enum.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/open-ai/_enums/oai-model.enum.ts"],"names":[],"mappings":";;;AAKA;;GAEG;AACH,IAAY,cA8JX;AA9JD,WAAY,cAAc;IACxB,uDAAuD;IACvD,mCAAiB,CAAA;IACjB,2CAAyB,CAAA;IACzB,mCAAiB,CAAA;IACjB,6CAA2B,CAAA;IAC3B,6CAA2B,CAAA;IAC3B,mCAAiB,CAAA;IACjB,6BAA6B;IAC7B,4CAA0B,CAAA;IAC1B,4CAA0B,CAAA;IAE1B,QAAQ;IACR,gCAAc,CAAA;IACd,mCAAiB,CAAA;IACjB,0CAAwB,CAAA;IACxB,0CAAwB,CAAA;IACxB,uDAAqC,CAAA;IACrC,0DAAwC,CAAA;IACxC,4CAA0B,CAAA;IAC1B,+CAA6B,CAAA;IAC7B,6BAA6B,CAAC,iBAAiB;IAE/C,UAAU;IACV;;;;;+DAK2D;IAE3D,QAAQ;IACR,QAAQ;IACR,kCAAgB,CAAA;IAChB,oBAAoB;IACpB,sDAAoC,CAAA;IACpC,oBAAoB;IACpB,sDAAoC,CAAA;IAEpC;;;;;;iDAM6C;IAE7C,WAAW;IACX,cAAc;IACd,4CAA0B,CAAA;IAC1B,yBAAyB;IACzB,+DAA6C,CAAA;IAG7C,SAAS;IACT;;;qDAGiD;IAEjD,SAAS;IACT;;;+BAG2B;IAE3B,uBAAuB;IACvB;;;;+BAI2B;IAE3B,kBAAkB;IAClB;;;OAGG;IACH,iEAA+C,CAAA;IAC/C;;;OAGG;IACH,iEAA+C,CAAA;IAC/C;;;OAGG;IACH,iEAA+C,CAAA;IAE/C;;uDAEmD;IAEnD,sBAAsB;IACtB;;wDAEoD;IAGpD,iCAAiC;IAYjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCA6C8B;AAChC,CAAC,EA9JW,cAAc,8BAAd,cAAc,QA8JzB;AAOY,QAAA,2BAA2B,GAA8B;IACpE,cAAc,CAAC,oBAAoB;IACnC,cAAc,CAAC,oBAAoB;IACnC,cAAc,CAAC,oBAAoB;CACpC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './_collections/oai-embedding-model-dimensions.const';
2
+ export * from './_collections/oai-models.const';
2
3
  export * from './_enums/oai-model.enum';
3
4
  export * from './_models/oai-call-settings.control-model';
4
5
  export * from './_models/oai-client-options.interface';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":"AAaA,cAAc,qDAAqD,CAAC;AAGpE,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,kDAAkD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":"AAaA,cAAc,qDAAqD,CAAC;AACpE,cAAc,iCAAiC,CAAC;AAGhD,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2CAA2C,CAAC;AAC1D,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,kDAAkD,CAAC"}
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  const tslib_1 = require("tslib");
12
12
  // COLLECTIONS
13
13
  tslib_1.__exportStar(require("./_collections/oai-embedding-model-dimensions.const"), exports);
14
+ tslib_1.__exportStar(require("./_collections/oai-models.const"), exports);
14
15
  // ENUMS
15
16
  tslib_1.__exportStar(require("./_enums/oai-model.enum"), exports);
16
17
  // MODELS
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":";AAGA;;;;;;;IAOI;;;AAEJ,cAAc;AACd,8FAAoE;AAEpE,QAAQ;AACR,kEAAwC;AAExC,SAAS;AACT,oFAA0D;AAC1D,iFAAuD;AACvD,iFAAuD;AACvD,+EAAqD;AACrD,2FAAiE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/_modules/ai/_modules/open-ai/index.ts"],"names":[],"mappings":";AAGA;;;;;;;IAOI;;;AAEJ,cAAc;AACd,8FAAoE;AACpE,0EAAgD;AAEhD,QAAQ;AACR,kEAAwC;AAExC,SAAS;AACT,oFAA0D;AAC1D,iFAAuD;AACvD,iFAAuD;AACvD,+EAAqD;AACrD,2FAAiE"}
@@ -1,4 +1,5 @@
1
1
  export * from './_collections/ai-model-ref.util';
2
+ export * from './_collections/ai-model-registry.util';
2
3
  export * from './_enums/ai-provider.enum';
3
4
  export * from './_enums/ai-model-type.enum';
4
5
  export * from './_enums/ai-message-role.enum';
@@ -9,7 +10,14 @@ export * from './_models/ai-embedding-response.interface';
9
10
  export * from './_models/ai-llm-request.interface';
10
11
  export * from './_models/ai-llm-response.interface';
11
12
  export * from './_models/ai-message.interface';
13
+ export * from './_models/ai-model-capabilities.interface';
14
+ export * from './_models/ai-model-info.interface';
15
+ export * from './_models/ai-model-settings-schema.interface';
12
16
  export * from './_models/ai-provider-capabilities.interface';
13
17
  export * from './_models/ai-settings.interface';
18
+ export * from './_models/ai-tool.interface';
19
+ export * from './_models/ai-tool-call.interface';
20
+ export * from './_models/ai-tool-result.interface';
21
+ export * from './_models/ai-tool-handler.type';
14
22
  export * from './_models/ai-user-provider-config.control-model';
15
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/ai/index.ts"],"names":[],"mappings":"AACA,cAAc,kCAAkC,CAAC;AAGjD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAG9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8CAA8C,CAAC;AAC7D,cAAc,iCAAiC,CAAC;AAChD,cAAc,iDAAiD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/ai/index.ts"],"names":[],"mappings":"AACA,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AAGtD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAG9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0CAA0C,CAAC;AACzD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,mCAAmC,CAAC;AAClD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iDAAiD,CAAC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  // COLLECTIONS
5
5
  tslib_1.__exportStar(require("./_collections/ai-model-ref.util"), exports);
6
+ tslib_1.__exportStar(require("./_collections/ai-model-registry.util"), exports);
6
7
  // ENUMS
7
8
  tslib_1.__exportStar(require("./_enums/ai-provider.enum"), exports);
8
9
  tslib_1.__exportStar(require("./_enums/ai-model-type.enum"), exports);
@@ -15,7 +16,14 @@ tslib_1.__exportStar(require("./_models/ai-embedding-response.interface"), expor
15
16
  tslib_1.__exportStar(require("./_models/ai-llm-request.interface"), exports);
16
17
  tslib_1.__exportStar(require("./_models/ai-llm-response.interface"), exports);
17
18
  tslib_1.__exportStar(require("./_models/ai-message.interface"), exports);
19
+ tslib_1.__exportStar(require("./_models/ai-model-capabilities.interface"), exports);
20
+ tslib_1.__exportStar(require("./_models/ai-model-info.interface"), exports);
21
+ tslib_1.__exportStar(require("./_models/ai-model-settings-schema.interface"), exports);
18
22
  tslib_1.__exportStar(require("./_models/ai-provider-capabilities.interface"), exports);
19
23
  tslib_1.__exportStar(require("./_models/ai-settings.interface"), exports);
24
+ tslib_1.__exportStar(require("./_models/ai-tool.interface"), exports);
25
+ tslib_1.__exportStar(require("./_models/ai-tool-call.interface"), exports);
26
+ tslib_1.__exportStar(require("./_models/ai-tool-result.interface"), exports);
27
+ tslib_1.__exportStar(require("./_models/ai-tool-handler.type"), exports);
20
28
  tslib_1.__exportStar(require("./_models/ai-user-provider-config.control-model"), exports);
21
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/ai/index.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,2EAAiD;AAEjD,QAAQ;AACR,oEAA0C;AAC1C,sEAA4C;AAC5C,wEAA8C;AAE9C,SAAS;AACT,+EAAqD;AACrD,wEAA8C;AAC9C,mFAAyD;AACzD,oFAA0D;AAC1D,6EAAmD;AACnD,8EAAoD;AACpD,yEAA+C;AAC/C,uFAA6D;AAC7D,0EAAgD;AAChD,0FAAgE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/ai/index.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,2EAAiD;AACjD,gFAAsD;AAEtD,QAAQ;AACR,oEAA0C;AAC1C,sEAA4C;AAC5C,wEAA8C;AAE9C,SAAS;AACT,+EAAqD;AACrD,wEAA8C;AAC9C,mFAAyD;AACzD,oFAA0D;AAC1D,6EAAmD;AACnD,8EAAoD;AACpD,yEAA+C;AAC/C,oFAA0D;AAC1D,4EAAkD;AAClD,uFAA6D;AAC7D,uFAA6D;AAC7D,0EAAgD;AAChD,sEAA4C;AAC5C,2EAAiD;AACjD,6EAAmD;AACnD,yEAA+C;AAC/C,0FAAgE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/fsm-dynamo",
3
- "version": "01.15.15",
3
+ "version": "01.15.17",
4
4
  "description": "Full Stack Model Collection for Dynamic (NodeJS-Typescript) Framework called Dynamo, by Future Development Ltd.",
5
5
  "DyBu_settings": {
6
6
  "packageType": "full-stack-package",
@@ -9,7 +9,7 @@ export interface DyFM_RequireEnv_Options {
9
9
  /**
10
10
  * Stable error code emitted on the DyFM_Error when the env-var is missing
11
11
  * and no fallback is configured. Convention: `<PACKAGE>-ENV-MISSING-<KEY>`,
12
- * e.g. `DyNM-ENV-MISSING-STORAGE-KEY`, `FDP-ENV-MISSING-AUTH-KEY`.
12
+ * e.g. `DyNM-ENV-MISSING-STORAGE-KEY`, `FDP-ENV-MISSING-CORE-FE-AUTH-KEY`.
13
13
  */
14
14
  errorCode: string;
15
15
 
@@ -69,8 +69,8 @@ export interface DyFM_RequireEnv_Options {
69
69
  * import { DyFM_requireEnv } from '@futdevpro/fsm-dynamo';
70
70
  *
71
71
  * export const FDP_keysEnv_settingsBase = {
72
- * authKey: DyFM_requireEnv('FDP_AUTH_KEY', {
73
- * errorCode: 'FDP-ENV-MISSING-AUTH-KEY',
72
+ * authKey: DyFM_requireEnv('FDP_CORE_FE_AUTH_KEY', {
73
+ * errorCode: 'FDP-ENV-MISSING-CORE-FE-AUTH-KEY',
74
74
  * issuerService: 'fdp-templates',
75
75
  * fallback: '<inherit literal>', // remove for Wave 3
76
76
  * }),
@@ -34,7 +34,7 @@ export interface DyFM_Global_Settings {
34
34
  * import { environment } from './environments/environment';
35
35
  *
36
36
  * DyFM_global_settings.envOverrides = {
37
- * FDP_AUTH_KEY: environment.authKey,
37
+ * FDP_CORE_FE_AUTH_KEY: environment.authKey,
38
38
  * FDP_EXTRA_AUTH_STORAGE_KEY: environment.extraAuthStorageKey,
39
39
  * DyNM_STORAGE_ENCRYPTION_KEY: environment.storageEncryptionKey,
40
40
  * };
@@ -0,0 +1,37 @@
1
+ import { DyFM_AI_ModelRegistry_Util } from './ai-model-registry.util';
2
+ import { DyFM_OAI_Models } from '../_modules/open-ai/_collections/oai-models.const';
3
+ import { DyFM_OAI_Model } from '../_modules/open-ai/_enums/oai-model.enum';
4
+
5
+ describe('| DyFM_AI_ModelRegistry_Util', (): void => {
6
+
7
+ describe('| findModelInfo', (): void => {
8
+ it('| should find a known model by id', (): void => {
9
+ const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, DyFM_OAI_Model.gpt55);
10
+
11
+ expect(info).toBeTruthy();
12
+ expect(info?.id).toBe(DyFM_OAI_Model.gpt55);
13
+ });
14
+
15
+ it('| should return undefined for an unknown id', (): void => {
16
+ const info = DyFM_AI_ModelRegistry_Util.findModelInfo(DyFM_OAI_Models, 'no-such-model');
17
+
18
+ expect(info).toBeUndefined();
19
+ });
20
+ });
21
+
22
+ describe('| modelSupportsTools', (): void => {
23
+ it('| should return true for a tool-capable chat model', (): void => {
24
+ expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.gpt55)).toBe(true);
25
+ });
26
+
27
+ it('| should return false for an embedding model', (): void => {
28
+ expect(
29
+ DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, DyFM_OAI_Model.textEmbedding_3Small)
30
+ ).toBe(false);
31
+ });
32
+
33
+ it('| should return false for an unknown id (no assumption of tool support)', (): void => {
34
+ expect(DyFM_AI_ModelRegistry_Util.modelSupportsTools(DyFM_OAI_Models, 'no-such-model')).toBe(false);
35
+ });
36
+ });
37
+ });
@@ -0,0 +1,30 @@
1
+ import { DyFM_AI_ModelInfo } from '../_models/ai-model-info.interface';
2
+
3
+ /**
4
+ * Lookups over a per-provider model registry (`DyFM_OAI_Models`, `DyFM_AAI_Models`, …).
5
+ *
6
+ * The registry array is passed IN — this keeps the agnostic `./ai` core free of
7
+ * any provider-submodule dependency (the execution-layer service supplies its own
8
+ * provider's registry). The lookup is by exact API model `id`.
9
+ */
10
+ export class DyFM_AI_ModelRegistry_Util {
11
+
12
+ /**
13
+ * A modell-descriptor megkeresese id alapjan a megadott registry-ben.
14
+ * @param models - a provider registry tomb (pl. DyFM_OAI_Models)
15
+ * @param id - pontos API modell-azonosito (pl. 'gpt-5.5')
16
+ */
17
+ static findModelInfo(models: DyFM_AI_ModelInfo[], id: string): DyFM_AI_ModelInfo | undefined {
18
+ return models.find((model: DyFM_AI_ModelInfo) => model.id === id);
19
+ }
20
+
21
+ /**
22
+ * Tamogatja-e a modell a function calling-ot (tool use)?
23
+ * Ismeretlen id eseten `false` (honesty — soha ne feltetelezzunk tool-kepesseget).
24
+ * @param models - a provider registry tomb
25
+ * @param id - pontos API modell-azonosito
26
+ */
27
+ static modelSupportsTools(models: DyFM_AI_ModelInfo[], id: string): boolean {
28
+ return DyFM_AI_ModelRegistry_Util.findModelInfo(models, id)?.capabilities?.functionCalling ?? false;
29
+ }
30
+ }
@@ -2,4 +2,6 @@ export enum DyFM_AI_MessageRole {
2
2
  system = 'system',
3
3
  user = 'user',
4
4
  assistant = 'assistant',
5
+ /** Tool-result message (function calling). Provider translators map this to their native shape. */
6
+ tool = 'tool',
5
7
  }
@@ -2,4 +2,6 @@ export enum DyFM_AI_ModelType {
2
2
  LLM = 'llm',
3
3
  Embedding = 'embedding',
4
4
  Chat = 'chat',
5
+ Image = 'image',
6
+ Audio = 'audio',
5
7
  }
@@ -1,3 +1,24 @@
1
+ /**
2
+ * Agnostic LLM call settings — the provider-neutral tuning bag.
3
+ *
4
+ * The typed fields below are the common, broadly-supported knobs. The
5
+ * `[key: string]: any` escape hatch carries provider/model-specific params
6
+ * until they are first-classed.
7
+ *
8
+ * IMPORTANT — per-model variance (FR-048, reserved): NOT every model accepts
9
+ * every field here, and sending an unsupported param can hard-fail the call
10
+ * (e.g. Anthropic Opus 4.7+ rejects `temperature`/`topP`/`topK` with HTTP 400;
11
+ * reasoning models take an extra `reasoningEffort`; pro models drop streaming).
12
+ * This flat bag intentionally does NOT encode those constraints — the future
13
+ * per-model settings system ({@link DyFM_AI_ModelSettingsSchema} on the model
14
+ * registry + a reconciler in `DyNTS_AI_LLM_ServiceBase`) will validate, clamp,
15
+ * and drop params against what each model actually accepts. Until then,
16
+ * provider translators drop model-rejected params locally (see FR-047 Phase 4
17
+ * Anthropic). Do not assume a field here is universally accepted.
18
+ *
19
+ * See: `__agent/feature-requests/FR-048-per-model-agnostic-settings.md`
20
+ * `documentations/guidelines/development/ai-per-model-settings.md`
21
+ */
1
22
  export class DyFM_AI_CallSettings {
2
23
  systemPrompt?: string = '';
3
24
  useModel?: string;
@@ -1,4 +1,5 @@
1
1
  import { DyFM_AI_Message } from './ai-message.interface';
2
+ import { DyFM_AI_ToolCall } from './ai-tool-call.interface';
2
3
 
3
4
  /**
4
5
  * Generic LLM response structure
@@ -13,6 +14,10 @@ export interface DyFM_AI_LLM_Response {
13
14
  };
14
15
  model?: string;
15
16
  finishReason?: string;
17
+ /** Present when the model requested tool calls (function calling); normalized across providers. */
18
+ toolCalls?: DyFM_AI_ToolCall[];
19
+ /** Normalized stop reason (e.g. 'tool_use', 'stop', 'length'). */
20
+ stopReason?: string;
16
21
  rawResponse?: any; // Provider-specific raw response
17
22
  }
18
23
 
@@ -1,7 +1,12 @@
1
1
  import { DyFM_AI_MessageRole } from '../_enums/ai-message-role.enum';
2
+ import { DyFM_AI_ToolCall } from './ai-tool-call.interface';
2
3
 
3
4
  export interface DyFM_AI_Message {
4
5
  role: DyFM_AI_MessageRole;
5
6
  content: string;
7
+ /** Present on an assistant turn that requested tool calls (function calling). */
8
+ toolCalls?: DyFM_AI_ToolCall[];
9
+ /** Present on a `tool`-role message — which {@link DyFM_AI_ToolCall.id} this result answers. */
10
+ toolCallId?: string;
6
11
  }
7
12
 
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Per-model capability flags.
3
+ *
4
+ * Where {@link DyFM_AI_ProviderCapabilities} describes what a PROVIDER can do
5
+ * in aggregate, this describes what a single concrete MODEL supports. This is
6
+ * the honest source of truth for feature-gating: e.g. an embedding model has
7
+ * functionCalling=false, a reasoning chat model has functionCalling=true, a
8
+ * local generic model may have functionCalling decided at runtime.
9
+ */
10
+ export interface DyFM_AI_ModelCapabilities {
11
+ /** Native function calling / tool use. The driver for the tool-calling feature. */
12
+ functionCalling: boolean;
13
+ /** Image input (vision). */
14
+ vision: boolean;
15
+ /** Streaming responses. */
16
+ streaming: boolean;
17
+ /** Structured output / JSON mode (OpenAI structured outputs, Gemini responseSchema, etc.). */
18
+ jsonMode: boolean;
19
+ /** Audio input (speech-to-text / audio understanding). */
20
+ audioInput: boolean;
21
+ /** Audio output (text-to-speech / speech generation). */
22
+ audioOutput: boolean;
23
+ /** Image generation (the model produces images). */
24
+ imageGeneration: boolean;
25
+ /** Embedding generation (vector output). */
26
+ embeddings: boolean;
27
+ }