@futdevpro/nts-dynamo 1.15.110 → 1.15.111

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.
@@ -1,7 +1,7 @@
1
1
  {
2
- "pid": 48582,
3
- "startedAt": "2026-07-22T00:46:29.296Z",
4
- "startedAtMs": 1784681189296,
2
+ "pid": 51667,
3
+ "startedAt": "2026-07-22T01:03:01.174Z",
4
+ "startedAtMs": 1784682181174,
5
5
  "phase": "npm-publish",
6
6
  "pipelineComplete": false,
7
7
  "serverRunning": false,
@@ -10,77 +10,77 @@
10
10
  "steps": {
11
11
  "validate-secrets": {
12
12
  "status": "ok",
13
- "startedAt": "2026-07-22T00:46:29.314Z",
13
+ "startedAt": "2026-07-22T01:03:01.205Z",
14
14
  "logLineStart": 2,
15
15
  "logLineEnd": 8,
16
- "durationSec": 0.3
16
+ "durationSec": 0.2
17
17
  },
18
18
  "discord-start": {
19
19
  "status": "ok",
20
- "startedAt": "2026-07-22T00:46:30.567Z",
20
+ "startedAt": "2026-07-22T01:03:02.442Z",
21
21
  "logLineStart": 9,
22
22
  "logLineEnd": 14,
23
- "durationSec": 3.1
23
+ "durationSec": 3.4
24
24
  },
25
25
  "pre-flight": {
26
26
  "status": "ok",
27
- "startedAt": "2026-07-22T00:46:34.675Z",
27
+ "startedAt": "2026-07-22T01:03:06.812Z",
28
28
  "logLineStart": 15,
29
29
  "logLineEnd": 17,
30
30
  "durationSec": 0.2
31
31
  },
32
32
  "install": {
33
33
  "status": "ok",
34
- "startedAt": "2026-07-22T00:46:35.872Z",
34
+ "startedAt": "2026-07-22T01:03:08.023Z",
35
35
  "logLineStart": 18,
36
- "logLineEnd": 100,
37
- "durationSec": 20
36
+ "logLineEnd": 102,
37
+ "durationSec": 22.2
38
38
  },
39
39
  "check-dev-leftovers": {
40
40
  "status": "ok",
41
- "startedAt": "2026-07-22T00:46:56.916Z",
42
- "logLineStart": 101,
41
+ "startedAt": "2026-07-22T01:03:31.234Z",
42
+ "logLineStart": 103,
43
43
  "logLineEnd": 110,
44
- "durationSec": 10.3
44
+ "durationSec": 4.1
45
45
  },
46
46
  "build": {
47
47
  "status": "ok",
48
- "startedAt": "2026-07-22T00:47:08.195Z",
48
+ "startedAt": "2026-07-22T01:03:36.895Z",
49
49
  "logLineStart": 111,
50
50
  "logLineEnd": 112,
51
- "durationSec": 29.3
51
+ "durationSec": 25.7
52
52
  },
53
53
  "test": {
54
54
  "status": "ok",
55
- "startedAt": "2026-07-22T00:47:38.467Z",
55
+ "startedAt": "2026-07-22T01:04:03.563Z",
56
56
  "logLineStart": 113,
57
- "logLineEnd": 2802,
58
- "durationSec": 27.6,
57
+ "logLineEnd": 2807,
58
+ "durationSec": 18.5,
59
59
  "testSummary": {
60
60
  "totalSpecs": 1569,
61
61
  "failures": 0,
62
62
  "passed": 1569,
63
- "testDurationSec": 6.55
63
+ "testDurationSec": 5.111
64
64
  },
65
65
  "errors": [
66
66
  {
67
- "line": 1935,
68
- "text": "...........(checkDbReadiness) diagnostics collection failed (non-fatal) Error: diag boom",
69
- "details": "'Test API Call' was UNSUCCESSFUL\nat Object.get host [as host] (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/build/_modules/server/server-status/server-status.control-service.spec.js:445:36)\nat TestServerStatusControlService.checkDbReadiness (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/build/_modules/server/server-status/server-status.control-service.js:162:29)\nat async UserContext.<anonymous> (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/build/_modules/server/server-status/server-status.control-service.spec.js:448:28)",
70
- "detailLineEnd": 1938
67
+ "line": 598,
68
+ "text": "(checkDbReadiness) diagnostics collection failed (non-fatal) Error: boom",
69
+ "details": "at runNext (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9\nat UserContext.<anonymous> (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/build/_modules/server/server-status/server-status.control-service.spec.js:465:68)\nat QueueRunner.attempt (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8414:40)\nat QueueRunner.run (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8452:27)\nat runNext (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9",
70
+ "detailLineEnd": 604
71
71
  },
72
72
  {
73
- "line": 1955,
74
- "text": "(checkDbReadiness) diagnostics collection failed (non-fatal) Error: boom",
75
- "details": "at runNext (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9\nat UserContext.<anonymous> (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/build/_modules/server/server-status/server-status.control-service.spec.js:465:68)\nat QueueRunner.attempt (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8414:40)\nat QueueRunner.run (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8452:27)\nat runNext (/tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/4e90ce91-ed2c-4de4-877e-747eee44694b/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9",
76
- "detailLineEnd": 1961
73
+ "line": 605,
74
+ "text": "..(checkDbReadiness) diagnostics collection failed (non-fatal) Error: diag boom",
75
+ "details": "at runNext (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9\nat Object.get host [as host] (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/build/_modules/server/server-status/server-status.control-service.spec.js:445:36)\nat TestServerStatusControlService.checkDbReadiness (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/build/_modules/server/server-status/server-status.control-service.js:162:29)\nat async UserContext.<anonymous> (/tmp/pipeline-runs/5b804af2-0338-480b-a1fd-d943c06b3078/build/_modules/server/server-status/server-status.control-service.spec.js:448:28)",
76
+ "detailLineEnd": 608
77
77
  }
78
78
  ]
79
79
  },
80
80
  "npm-publish": {
81
81
  "status": "running",
82
- "startedAt": "2026-07-22T00:48:07.146Z",
83
- "logLineStart": 2803,
82
+ "startedAt": "2026-07-22T01:04:23.140Z",
83
+ "logLineStart": 2808,
84
84
  "logLineEnd": null,
85
85
  "durationSec": null
86
86
  }
@@ -18,6 +18,14 @@ export declare class DyNTS_AIMock_FixtureSerializer_Util {
18
18
  constName: string;
19
19
  fixtures: DyNTS_AIMock_Fixture[];
20
20
  headerNote?: string;
21
+ /**
22
+ * A generalt fajl import-utvonala a `DyNTS_AIMock_Fixture` tipushoz.
23
+ *
24
+ * Default a publikus package-utvonal (KULSO consumer fixture-fajljaihoz). **A csomagon BELULRE**
25
+ * kerulo fixture-oknel relativ utat kell adni (pl. `'../_models/interfaces/aim-fixture.interface'`),
26
+ * kulonben a fajl onmagara hivatkozna a package-nevvel, ami build-kor nem oldodik fel.
27
+ */
28
+ importPath?: string;
21
29
  }): string;
22
30
  /** Fixture-ok stabil rendezese (provider|model|modality|inputHash). */
23
31
  private static sortFixtures;
@@ -1 +1 @@
1
- {"version":3,"file":"aim-fixture-serializer.util.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF;;;;;;;GAOG;AACH,qBAAa,mCAAmC;IAE9C,2BAA2B;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAElD;;;OAGG;IACH,MAAM,CAAC,cAAc,CACnB,GAAG,EAAE;QACH,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACjC,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,MAAM;IAwBT,uEAAuE;IACvE,OAAO,CAAC,MAAM,CAAC,YAAY;IAM3B,yCAAyC;IACzC,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;CAwCzB"}
1
+ {"version":3,"file":"aim-fixture-serializer.util.d.ts","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAEnF;;;;;;;GAOG;AACH,qBAAa,mCAAmC;IAE9C,2BAA2B;IAC3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAElD;;;OAGG;IACH,MAAM,CAAC,cAAc,CACnB,GAAG,EAAE;QACH,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACjC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB;;;;;;WAMG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GACA,MAAM;IA0BT,uEAAuE;IACvE,OAAO,CAAC,MAAM,CAAC,YAAY;IAM3B,yCAAyC;IACzC,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;CAwCzB"}
@@ -22,8 +22,9 @@ class DyNTS_AIMock_FixtureSerializer_Util {
22
22
  .map((fixture) => this.stringify(fixture, this.indentUnit))
23
23
  .join(',\n');
24
24
  const note = set.headerNote ?? 'Auto-generalt fixture-keszlet — kezzel NE szerkeszd.';
25
+ const importPath = set.importPath ?? '@futdevpro/nts-dynamo/ai/ai-mock';
25
26
  return [
26
- `import { DyNTS_AIMock_Fixture } from '@futdevpro/nts-dynamo/ai/ai-mock';`,
27
+ `import { DyNTS_AIMock_Fixture } from '${importPath}';`,
27
28
  '',
28
29
  '/**',
29
30
  ` * ${note}`,
@@ -1 +1 @@
1
- {"version":3,"file":"aim-fixture-serializer.util.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aim-fixture-serializer.util.js","sourceRoot":"","sources":["../../../../../../src/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/nts-dynamo",
3
- "version": "01.15.110",
3
+ "version": "01.15.111",
4
4
  "description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
5
5
  "DyBu_settings": {
6
6
  "packageType": "server-package",
@@ -0,0 +1,161 @@
1
+ import { DyNTS_AIMock_Fixture } from '../_models/interfaces/aim-fixture.interface';
2
+
3
+ /**
4
+ * Valodi AI-generalasbol beegetve (live capture 2026-07-21). Kezzel NE szerkeszd.
5
+ *
6
+ * Determinisztikus sorrend (match-kulcs szerint) + rendezett objektum-kulcsok, hogy az ujra-generalas
7
+ * ne okozzon zajos diff-et. Forras: `DyNTS_AIMock_FixtureSerializer_Util`.
8
+ */
9
+ export const DyNTS_AIMock_TextFixtures: DyNTS_AIMock_Fixture[] = [
10
+ {
11
+ "capturedAt": "2026-07-22T00:58:38.792Z",
12
+ "config": {
13
+ "temperature": 0
14
+ },
15
+ "input": "Reply with exactly: PONG",
16
+ "inputHash": "0fb5aed1b51b28b04409b7963b2453fe1597d198c3b8396fc8ebd072104511de",
17
+ "modality": "text",
18
+ "model": "gpt-4o-mini",
19
+ "output": {
20
+ "content": "PONG",
21
+ "finish_reason": "stop",
22
+ "usage": {
23
+ "completion_tokens": 2,
24
+ "completion_tokens_details": {
25
+ "accepted_prediction_tokens": 0,
26
+ "audio_tokens": 0,
27
+ "reasoning_tokens": 0,
28
+ "rejected_prediction_tokens": 0
29
+ },
30
+ "prompt_tokens": 13,
31
+ "prompt_tokens_details": {
32
+ "audio_tokens": 0,
33
+ "cached_tokens": 0
34
+ },
35
+ "total_tokens": 15
36
+ }
37
+ },
38
+ "provider": "open-ai",
39
+ "sourceModel": "gpt-4o-mini"
40
+ },
41
+ {
42
+ "capturedAt": "2026-07-22T00:58:37.828Z",
43
+ "config": {
44
+ "temperature": 0
45
+ },
46
+ "input": "Reply with exactly: PONG",
47
+ "inputHash": "0fb5aed1b51b28b04409b7963b2453fe1597d198c3b8396fc8ebd072104511de",
48
+ "modality": "text",
49
+ "model": "gpt-5.4-nano",
50
+ "output": {
51
+ "content": "PONG",
52
+ "finish_reason": "stop",
53
+ "usage": {
54
+ "completion_tokens": 5,
55
+ "completion_tokens_details": {
56
+ "accepted_prediction_tokens": 0,
57
+ "audio_tokens": 0,
58
+ "reasoning_tokens": 0,
59
+ "rejected_prediction_tokens": 0
60
+ },
61
+ "prompt_tokens": 12,
62
+ "prompt_tokens_details": {
63
+ "audio_tokens": 0,
64
+ "cached_tokens": 0
65
+ },
66
+ "total_tokens": 17
67
+ }
68
+ },
69
+ "provider": "open-ai",
70
+ "sourceModel": "gpt-5.4-nano"
71
+ },
72
+ {
73
+ "capturedAt": "2026-07-22T00:58:38.316Z",
74
+ "config": {
75
+ "temperature": 0
76
+ },
77
+ "input": "What is the capital of Hungary? One word.",
78
+ "inputHash": "85c5b3ea12c8e34d97a18cb75ae55936aeb2ef0af90eb2f395a44ace6ce997e8",
79
+ "modality": "text",
80
+ "model": "gpt-5.4-nano",
81
+ "output": {
82
+ "content": "Budapest",
83
+ "finish_reason": "stop",
84
+ "usage": {
85
+ "completion_tokens": 5,
86
+ "completion_tokens_details": {
87
+ "accepted_prediction_tokens": 0,
88
+ "audio_tokens": 0,
89
+ "reasoning_tokens": 0,
90
+ "rejected_prediction_tokens": 0
91
+ },
92
+ "prompt_tokens": 16,
93
+ "prompt_tokens_details": {
94
+ "audio_tokens": 0,
95
+ "cached_tokens": 0
96
+ },
97
+ "total_tokens": 21
98
+ }
99
+ },
100
+ "provider": "open-ai",
101
+ "sourceModel": "gpt-5.4-nano"
102
+ },
103
+ {
104
+ "capturedAt": "2026-07-22T00:58:39.151Z",
105
+ "config": {},
106
+ "input": "artificial intelligence",
107
+ "inputHash": "803b3eb2b6af027151950019f2d5ede506a6636a9eafd262b27c23e3f834056f",
108
+ "modality": "embedding",
109
+ "model": "text-embedding-3-small",
110
+ "output": {
111
+ "dimensions": 1536,
112
+ "embeddingHead": [
113
+ 0.0005774497985839844,
114
+ -0.012481689453125,
115
+ -0.01143646240234375,
116
+ -0.0247344970703125,
117
+ 0.011383056640625,
118
+ -0.006069183349609375,
119
+ -0.0209503173828125,
120
+ 0.03741455078125
121
+ ],
122
+ "model": "text-embedding-3-small",
123
+ "object": "list",
124
+ "usage": {
125
+ "prompt_tokens": 3,
126
+ "total_tokens": 3
127
+ }
128
+ },
129
+ "provider": "open-ai",
130
+ "sourceModel": "text-embedding-3-small"
131
+ },
132
+ {
133
+ "capturedAt": "2026-07-22T00:58:39.020Z",
134
+ "config": {},
135
+ "input": "the quick brown fox",
136
+ "inputHash": "9ecb36561341d18eb65484e833efea61edc74b84cf5e6ae1b81c63533e25fc8f",
137
+ "modality": "embedding",
138
+ "model": "text-embedding-3-small",
139
+ "output": {
140
+ "dimensions": 1536,
141
+ "embeddingHead": [
142
+ -0.033355712890625,
143
+ -0.00183868408203125,
144
+ 0.005237579345703125,
145
+ -0.06304931640625,
146
+ -0.04779052734375,
147
+ 0.0018625259399414062,
148
+ 0.016876220703125,
149
+ 0.034820556640625
150
+ ],
151
+ "model": "text-embedding-3-small",
152
+ "object": "list",
153
+ "usage": {
154
+ "prompt_tokens": 4,
155
+ "total_tokens": 4
156
+ }
157
+ },
158
+ "provider": "open-ai",
159
+ "sourceModel": "text-embedding-3-small"
160
+ }
161
+ ];
@@ -0,0 +1,153 @@
1
+ [
2
+ {
3
+ "provider": "open-ai",
4
+ "model": "gpt-5.4-nano",
5
+ "modality": "text",
6
+ "config": {
7
+ "temperature": 0
8
+ },
9
+ "input": "Reply with exactly: PONG",
10
+ "inputHash": "0fb5aed1b51b28b04409b7963b2453fe1597d198c3b8396fc8ebd072104511de",
11
+ "output": {
12
+ "content": "PONG",
13
+ "finish_reason": "stop",
14
+ "usage": {
15
+ "prompt_tokens": 12,
16
+ "completion_tokens": 5,
17
+ "total_tokens": 17,
18
+ "prompt_tokens_details": {
19
+ "cached_tokens": 0,
20
+ "audio_tokens": 0
21
+ },
22
+ "completion_tokens_details": {
23
+ "reasoning_tokens": 0,
24
+ "audio_tokens": 0,
25
+ "accepted_prediction_tokens": 0,
26
+ "rejected_prediction_tokens": 0
27
+ }
28
+ }
29
+ },
30
+ "capturedAt": "2026-07-22T00:58:37.828Z",
31
+ "sourceModel": "gpt-5.4-nano"
32
+ },
33
+ {
34
+ "provider": "open-ai",
35
+ "model": "gpt-5.4-nano",
36
+ "modality": "text",
37
+ "config": {
38
+ "temperature": 0
39
+ },
40
+ "input": "What is the capital of Hungary? One word.",
41
+ "inputHash": "85c5b3ea12c8e34d97a18cb75ae55936aeb2ef0af90eb2f395a44ace6ce997e8",
42
+ "output": {
43
+ "content": "Budapest",
44
+ "finish_reason": "stop",
45
+ "usage": {
46
+ "prompt_tokens": 16,
47
+ "completion_tokens": 5,
48
+ "total_tokens": 21,
49
+ "prompt_tokens_details": {
50
+ "cached_tokens": 0,
51
+ "audio_tokens": 0
52
+ },
53
+ "completion_tokens_details": {
54
+ "reasoning_tokens": 0,
55
+ "audio_tokens": 0,
56
+ "accepted_prediction_tokens": 0,
57
+ "rejected_prediction_tokens": 0
58
+ }
59
+ }
60
+ },
61
+ "capturedAt": "2026-07-22T00:58:38.316Z",
62
+ "sourceModel": "gpt-5.4-nano"
63
+ },
64
+ {
65
+ "provider": "open-ai",
66
+ "model": "gpt-4o-mini",
67
+ "modality": "text",
68
+ "config": {
69
+ "temperature": 0
70
+ },
71
+ "input": "Reply with exactly: PONG",
72
+ "inputHash": "0fb5aed1b51b28b04409b7963b2453fe1597d198c3b8396fc8ebd072104511de",
73
+ "output": {
74
+ "content": "PONG",
75
+ "finish_reason": "stop",
76
+ "usage": {
77
+ "prompt_tokens": 13,
78
+ "completion_tokens": 2,
79
+ "total_tokens": 15,
80
+ "prompt_tokens_details": {
81
+ "cached_tokens": 0,
82
+ "audio_tokens": 0
83
+ },
84
+ "completion_tokens_details": {
85
+ "reasoning_tokens": 0,
86
+ "audio_tokens": 0,
87
+ "accepted_prediction_tokens": 0,
88
+ "rejected_prediction_tokens": 0
89
+ }
90
+ }
91
+ },
92
+ "capturedAt": "2026-07-22T00:58:38.792Z",
93
+ "sourceModel": "gpt-4o-mini"
94
+ },
95
+ {
96
+ "provider": "open-ai",
97
+ "model": "text-embedding-3-small",
98
+ "modality": "embedding",
99
+ "config": {},
100
+ "input": "the quick brown fox",
101
+ "inputHash": "9ecb36561341d18eb65484e833efea61edc74b84cf5e6ae1b81c63533e25fc8f",
102
+ "output": {
103
+ "object": "list",
104
+ "model": "text-embedding-3-small",
105
+ "dimensions": 1536,
106
+ "embeddingHead": [
107
+ -0.033355712890625,
108
+ -0.00183868408203125,
109
+ 0.005237579345703125,
110
+ -0.06304931640625,
111
+ -0.04779052734375,
112
+ 0.0018625259399414062,
113
+ 0.016876220703125,
114
+ 0.034820556640625
115
+ ],
116
+ "usage": {
117
+ "prompt_tokens": 4,
118
+ "total_tokens": 4
119
+ }
120
+ },
121
+ "capturedAt": "2026-07-22T00:58:39.020Z",
122
+ "sourceModel": "text-embedding-3-small"
123
+ },
124
+ {
125
+ "provider": "open-ai",
126
+ "model": "text-embedding-3-small",
127
+ "modality": "embedding",
128
+ "config": {},
129
+ "input": "artificial intelligence",
130
+ "inputHash": "803b3eb2b6af027151950019f2d5ede506a6636a9eafd262b27c23e3f834056f",
131
+ "output": {
132
+ "object": "list",
133
+ "model": "text-embedding-3-small",
134
+ "dimensions": 1536,
135
+ "embeddingHead": [
136
+ 0.0005774497985839844,
137
+ -0.012481689453125,
138
+ -0.01143646240234375,
139
+ -0.0247344970703125,
140
+ 0.011383056640625,
141
+ -0.006069183349609375,
142
+ -0.0209503173828125,
143
+ 0.03741455078125
144
+ ],
145
+ "usage": {
146
+ "prompt_tokens": 3,
147
+ "total_tokens": 3
148
+ }
149
+ },
150
+ "capturedAt": "2026-07-22T00:58:39.151Z",
151
+ "sourceModel": "text-embedding-3-small"
152
+ }
153
+ ]
@@ -0,0 +1,126 @@
1
+ /**
2
+ * FIZETOS fixture-seed (MP-3 SP-3.3) — a VALODI `DyNTS_AIMock_FixtureHarness_Service`-en es a
3
+ * `DyNTS_AIMock_FixtureSerializer_Util`-on keresztul, hogy a sajat kodutunkat is bizonyitsa (dogfooding).
4
+ *
5
+ * ⚠️ EZ PENZT KOLT. Szandekosan KICSI es KORLATOZOTT:
6
+ * - csak a legolcsobb engedett modellek (`gpt-5.4-nano` text, `text-embedding-3-small` embedding)
7
+ * - rovid promptok + szuk `max_completion_tokens`
8
+ * - kep-generalas NINCS (kulon dontes targya)
9
+ * - MINDEN fixture AZONNAL lemezre irodik (runbook §2c) — kvota-kifogyas nem viszi el az addigi munkat
10
+ * - 429 eseten az adott provider leall, a tobbi megy tovabb
11
+ * - a futas vegen kiirja a TENYLEGES token-fogyast
12
+ *
13
+ * Futtatas: node scripts/ai-fixture-seed.js
14
+ */
15
+
16
+ const fs = require('fs');
17
+ const path = require('path');
18
+
19
+ const ENV_PATH = path.resolve(__dirname, '../../../fdp-devops/.env');
20
+ const AIMOCK = path.resolve(__dirname, '../build/_modules/ai/_modules/ai-mock');
21
+ const OUT_DIR = path.resolve(__dirname, '_seed-out');
22
+ const RAW_FILE = path.join(OUT_DIR, 'seed-raw.json');
23
+
24
+ const { DyNTS_AIMock_FixtureHarness_Service } = require(path.join(AIMOCK, '_services/aim-fixture-harness.service'));
25
+ const { DyNTS_AIMock_FixtureSerializer_Util } = require(path.join(AIMOCK, '_collections/aim-fixture-serializer.util'));
26
+ const { DyNTS_AIMock_Modality } = require(path.join(AIMOCK, '_enums/aim-modality.enum'));
27
+ const { DyFM_OAI_Models } = require('@futdevpro/fsm-dynamo/ai/open-ai');
28
+
29
+ function loadKey() {
30
+ for (const line of fs.readFileSync(ENV_PATH, 'utf8').split(/\r?\n/)) {
31
+ const m = line.match(/^OPENAI_API_KEY=(.*)$/);
32
+ if (m) { return m[1].trim().replace(/^["']|["']$/g, ''); }
33
+ }
34
+ return null;
35
+ }
36
+
37
+ const usage = { prompt: 0, completion: 0, calls: 0 };
38
+ let quotaStop = false;
39
+
40
+ /** VALODI generator — ez az egyetlen pont, ahol penz folyik. */
41
+ function makeGenerator(key) {
42
+ return async (request) => {
43
+ if (request.modality === DyNTS_AIMock_Modality.embedding) {
44
+ const r = await fetch('https://api.openai.com/v1/embeddings', {
45
+ method: 'POST',
46
+ headers: { Authorization: `Bearer ${key}`, 'content-type': 'application/json' },
47
+ body: JSON.stringify({ model: request.model, input: request.input, ...(request.config || {}) }),
48
+ });
49
+ if (r.status === 429) { quotaStop = true; throw new Error('429 quota'); }
50
+ const j = await r.json();
51
+ if (j.error) { throw new Error(j.error.message); }
52
+ usage.prompt += j.usage?.prompt_tokens || 0;
53
+ usage.calls++;
54
+ // a teljes vektor helyett a dimenziot + az elso 8 erteket orizzuk (a fixture-fajl maradjon kezelheto)
55
+ return { object: j.object, model: j.model, dimensions: j.data[0].embedding.length,
56
+ embeddingHead: j.data[0].embedding.slice(0, 8), usage: j.usage };
57
+ }
58
+
59
+ const r = await fetch('https://api.openai.com/v1/chat/completions', {
60
+ method: 'POST',
61
+ headers: { Authorization: `Bearer ${key}`, 'content-type': 'application/json' },
62
+ body: JSON.stringify({ model: request.model, messages: [ { role: 'user', content: request.input } ],
63
+ max_completion_tokens: 64, ...(request.config || {}) }),
64
+ });
65
+ if (r.status === 429) { quotaStop = true; throw new Error('429 quota'); }
66
+ const j = await r.json();
67
+ if (j.error) { throw new Error(j.error.message); }
68
+ usage.prompt += j.usage?.prompt_tokens || 0;
69
+ usage.completion += j.usage?.completion_tokens || 0;
70
+ usage.calls++;
71
+ return { content: j.choices[0].message.content, finish_reason: j.choices[0].finish_reason, usage: j.usage };
72
+ };
73
+ }
74
+
75
+ const SEED = [
76
+ { model: 'gpt-5.4-nano', modality: DyNTS_AIMock_Modality.text, config: { temperature: 0 }, input: 'Reply with exactly: PONG' },
77
+ { model: 'gpt-5.4-nano', modality: DyNTS_AIMock_Modality.text, config: { temperature: 0 }, input: 'What is the capital of Hungary? One word.' },
78
+ { model: 'gpt-4o-mini', modality: DyNTS_AIMock_Modality.text, config: { temperature: 0 }, input: 'Reply with exactly: PONG' },
79
+ { model: 'text-embedding-3-small', modality: DyNTS_AIMock_Modality.embedding, config: {}, input: 'the quick brown fox' },
80
+ { model: 'text-embedding-3-small', modality: DyNTS_AIMock_Modality.embedding, config: {}, input: 'artificial intelligence' },
81
+ ];
82
+
83
+ (async () => {
84
+ const key = loadKey();
85
+ if (!key) { console.error('OPENAI_API_KEY hianyzik'); process.exit(1); }
86
+
87
+ const harness = new DyNTS_AIMock_FixtureHarness_Service({
88
+ generator: makeGenerator(key),
89
+ registry: DyFM_OAI_Models,
90
+ allowRealSpend: true, // ⚠️ JOVAHAGYOTT futas (G1). Alapertelmezesben ez false.
91
+ });
92
+
93
+ fs.mkdirSync(OUT_DIR, { recursive: true });
94
+ const fixtures = [];
95
+
96
+ console.log('FIZETOS seed — kicsi es korlatozott, fixture-onkent lemezre irva\n');
97
+
98
+ for (const s of SEED) {
99
+ if (quotaStop) { console.log(` KIHAGYVA (kvota): ${s.model} / ${s.input.slice(0, 30)}`); continue; }
100
+ try {
101
+ const f = await harness.capture({ provider: 'open-ai', model: s.model, modality: s.modality,
102
+ config: s.config, input: s.input });
103
+ fixtures.push(f);
104
+ fs.writeFileSync(RAW_FILE, JSON.stringify(fixtures, null, 2)); // INKREMENTALIS
105
+ console.log(` ✅ ${s.model} [${s.modality}] "${s.input.slice(0, 32)}"`);
106
+ } catch (e) {
107
+ console.log(` ❌ ${s.model}: ${e.message.slice(0, 90)}`);
108
+ }
109
+ }
110
+
111
+ if (fixtures.length) {
112
+ const src = DyNTS_AIMock_FixtureSerializer_Util.toConstantFile({
113
+ constName: 'DyNTS_AIMock_TextFixtures', fixtures, importPath: '../_models/interfaces/aim-fixture.interface',
114
+ headerNote: 'Valodi AI-generalasbol beegetve (live capture 2026-07-21). Kezzel NE szerkeszd.',
115
+ });
116
+ const again = DyNTS_AIMock_FixtureSerializer_Util.toConstantFile({
117
+ constName: 'DyNTS_AIMock_TextFixtures', fixtures, importPath: '../_models/interfaces/aim-fixture.interface',
118
+ headerNote: 'Valodi AI-generalasbol beegetve (live capture 2026-07-21). Kezzel NE szerkeszd.',
119
+ });
120
+ fs.writeFileSync(path.join(OUT_DIR, 'aim-seed.fixtures.ts'), src);
121
+ console.log(`\n determinizmus (ketszer szerializalva byte-azonos): ${src === again ? '✅ IGEN' : '❌ NEM'}`);
122
+ }
123
+
124
+ console.log(`\n📊 TENYLEGES fogyas: ${usage.calls} hivas · prompt ${usage.prompt} token · completion ${usage.completion} token`);
125
+ console.log(` ${fixtures.length} fixture → ${OUT_DIR}`);
126
+ })();
@@ -22,6 +22,14 @@ export class DyNTS_AIMock_FixtureSerializer_Util {
22
22
  constName: string,
23
23
  fixtures: DyNTS_AIMock_Fixture[],
24
24
  headerNote?: string,
25
+ /**
26
+ * A generalt fajl import-utvonala a `DyNTS_AIMock_Fixture` tipushoz.
27
+ *
28
+ * Default a publikus package-utvonal (KULSO consumer fixture-fajljaihoz). **A csomagon BELULRE**
29
+ * kerulo fixture-oknel relativ utat kell adni (pl. `'../_models/interfaces/aim-fixture.interface'`),
30
+ * kulonben a fajl onmagara hivatkozna a package-nevvel, ami build-kor nem oldodik fel.
31
+ */
32
+ importPath?: string,
25
33
  }
26
34
  ): string {
27
35
  const sorted: DyNTS_AIMock_Fixture[] = this.sortFixtures(set.fixtures);
@@ -31,8 +39,10 @@ export class DyNTS_AIMock_FixtureSerializer_Util {
31
39
 
32
40
  const note: string = set.headerNote ?? 'Auto-generalt fixture-keszlet — kezzel NE szerkeszd.';
33
41
 
42
+ const importPath: string = set.importPath ?? '@futdevpro/nts-dynamo/ai/ai-mock';
43
+
34
44
  return [
35
- `import { DyNTS_AIMock_Fixture } from '@futdevpro/nts-dynamo/ai/ai-mock';`,
45
+ `import { DyNTS_AIMock_Fixture } from '${importPath}';`,
36
46
  '',
37
47
  '/**',
38
48
  ` * ${note}`,