@futdevpro/nts-dynamo 1.15.81 → 1.15.82
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.
- package/.dynamo/logs/cicd-pipeline/output.log +1697 -1615
- package/.dynamo/logs/cicd-pipeline/status.json +39 -39
- package/build/_services/base/archive-data.service.d.ts.map +1 -1
- package/build/_services/base/archive-data.service.js +8 -0
- package/build/_services/base/archive-data.service.js.map +1 -1
- package/package.json +1 -1
- package/src/_services/base/archive-data.service.spec.ts +13 -0
- package/src/_services/base/archive-data.service.ts +11 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"pid":
|
|
3
|
-
"startedAt": "2026-06-
|
|
4
|
-
"startedAtMs":
|
|
2
|
+
"pid": 24492,
|
|
3
|
+
"startedAt": "2026-06-23T19:02:47.396Z",
|
|
4
|
+
"startedAtMs": 1782241367396,
|
|
5
5
|
"phase": "npm-publish",
|
|
6
6
|
"pipelineComplete": false,
|
|
7
7
|
"serverRunning": false,
|
|
@@ -10,83 +10,83 @@
|
|
|
10
10
|
"steps": {
|
|
11
11
|
"validate-secrets": {
|
|
12
12
|
"status": "ok",
|
|
13
|
-
"startedAt": "2026-06-
|
|
13
|
+
"startedAt": "2026-06-23T19:02:47.412Z",
|
|
14
14
|
"logLineStart": 2,
|
|
15
15
|
"logLineEnd": 7,
|
|
16
|
-
"durationSec": 0.
|
|
16
|
+
"durationSec": 0.5
|
|
17
17
|
},
|
|
18
18
|
"discord-start": {
|
|
19
19
|
"status": "ok",
|
|
20
|
-
"startedAt": "2026-06-
|
|
20
|
+
"startedAt": "2026-06-23T19:02:48.881Z",
|
|
21
21
|
"logLineStart": 8,
|
|
22
22
|
"logLineEnd": 13,
|
|
23
|
-
"durationSec": 3.
|
|
23
|
+
"durationSec": 3.1
|
|
24
24
|
},
|
|
25
25
|
"pre-flight": {
|
|
26
26
|
"status": "ok",
|
|
27
|
-
"startedAt": "2026-06-
|
|
27
|
+
"startedAt": "2026-06-23T19:02:53.013Z",
|
|
28
28
|
"logLineStart": 14,
|
|
29
29
|
"logLineEnd": 16,
|
|
30
|
-
"durationSec": 0.
|
|
30
|
+
"durationSec": 0.2
|
|
31
31
|
},
|
|
32
32
|
"install": {
|
|
33
33
|
"status": "ok",
|
|
34
|
-
"startedAt": "2026-06-
|
|
34
|
+
"startedAt": "2026-06-23T19:02:54.213Z",
|
|
35
35
|
"logLineStart": 17,
|
|
36
|
-
"logLineEnd":
|
|
37
|
-
"durationSec":
|
|
36
|
+
"logLineEnd": 125,
|
|
37
|
+
"durationSec": 57.8
|
|
38
38
|
},
|
|
39
39
|
"check-dev-leftovers": {
|
|
40
40
|
"status": "ok",
|
|
41
|
-
"startedAt": "2026-06-
|
|
42
|
-
"logLineStart":
|
|
43
|
-
"logLineEnd":
|
|
44
|
-
"durationSec":
|
|
41
|
+
"startedAt": "2026-06-23T19:03:53.116Z",
|
|
42
|
+
"logLineStart": 126,
|
|
43
|
+
"logLineEnd": 133,
|
|
44
|
+
"durationSec": 23
|
|
45
45
|
},
|
|
46
46
|
"build": {
|
|
47
47
|
"status": "ok",
|
|
48
|
-
"startedAt": "2026-06-
|
|
49
|
-
"logLineStart":
|
|
50
|
-
"logLineEnd":
|
|
51
|
-
"durationSec":
|
|
48
|
+
"startedAt": "2026-06-23T19:04:17.099Z",
|
|
49
|
+
"logLineStart": 134,
|
|
50
|
+
"logLineEnd": 135,
|
|
51
|
+
"durationSec": 38.5
|
|
52
52
|
},
|
|
53
53
|
"test": {
|
|
54
54
|
"status": "ok",
|
|
55
|
-
"startedAt": "2026-06-
|
|
56
|
-
"logLineStart":
|
|
57
|
-
"logLineEnd":
|
|
58
|
-
"durationSec":
|
|
55
|
+
"startedAt": "2026-06-23T19:04:56.660Z",
|
|
56
|
+
"logLineStart": 136,
|
|
57
|
+
"logLineEnd": 2861,
|
|
58
|
+
"durationSec": 50.8,
|
|
59
59
|
"testSummary": {
|
|
60
|
-
"totalSpecs":
|
|
60
|
+
"totalSpecs": 1454,
|
|
61
61
|
"failures": 0,
|
|
62
|
-
"passed":
|
|
63
|
-
"testDurationSec":
|
|
62
|
+
"passed": 1454,
|
|
63
|
+
"testDurationSec": 14.382
|
|
64
64
|
},
|
|
65
65
|
"errors": [
|
|
66
66
|
{
|
|
67
|
-
"line":
|
|
68
|
-
"text": "
|
|
69
|
-
"details": "📍 /tmp/pipeline-runs/
|
|
70
|
-
"detailLineEnd":
|
|
67
|
+
"line": 1370,
|
|
68
|
+
"text": "...............***************..........................................................................❌ getDataByDependencyId failed, dependencyKey is missing from service! (test_data)",
|
|
69
|
+
"details": "...................................................................................[DyNTS LVS hydrate] 'pool-a' pool: 1 vektor betöltve az in-memory pool-ba.\n..[DyNTS LVS hydrate] 'pool-a' pool: 1 vektor betöltve az in-memory pool-ba.\n.[DyNTS LVS hydrate] 'pool-a' pool: 3 vektor betöltve az in-memory pool-ba.\n📍 /tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/build/_services/base/data.service.spec.js:182:87",
|
|
70
|
+
"detailLineEnd": 1371
|
|
71
71
|
},
|
|
72
72
|
{
|
|
73
|
-
"line":
|
|
73
|
+
"line": 1947,
|
|
74
74
|
"text": "❌❌ Error handleMessage: Error: Test error",
|
|
75
|
-
"details": "at UserContext.<anonymous> (/tmp/pipeline-runs/
|
|
76
|
-
"detailLineEnd":
|
|
75
|
+
"details": "at UserContext.<anonymous> (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/build/_modules/assistant/_services/ass-io.control-service.spec.js:92:136)\nat QueueRunner.attempt (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/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/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8452:27)\nat runNext (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9",
|
|
76
|
+
"detailLineEnd": 1953
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
|
-
"line":
|
|
79
|
+
"line": 1960,
|
|
80
80
|
"text": "❌❌ Error handleMessage: Error: Test error",
|
|
81
|
-
"details": "at UserContext.<anonymous> (/tmp/pipeline-runs/
|
|
82
|
-
"detailLineEnd":
|
|
81
|
+
"details": "at UserContext.<anonymous> (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/build/_modules/assistant/_services/ass-io.control-service.spec.js:68:136)\nat QueueRunner.attempt (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/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/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8452:27)\nat runNext (/tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8355:16)\nat /tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8361:11\nat /tmp/pipeline-runs/3ac14e8d-dc97-49fe-afe9-a5cddb3cc645/node_modules/.pnpm/jasmine-core@5.10.0/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:8241:9",
|
|
82
|
+
"detailLineEnd": 1966
|
|
83
83
|
}
|
|
84
84
|
]
|
|
85
85
|
},
|
|
86
86
|
"npm-publish": {
|
|
87
87
|
"status": "running",
|
|
88
|
-
"startedAt": "2026-06-
|
|
89
|
-
"logLineStart":
|
|
88
|
+
"startedAt": "2026-06-23T19:05:48.701Z",
|
|
89
|
+
"logLineStart": 2862,
|
|
90
90
|
"logLineEnd": null,
|
|
91
91
|
"durationSec": null
|
|
92
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive-data.service.d.ts","sourceRoot":"","sources":["../../../src/_services/base/archive-data.service.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EAGrB,aAAa,EACd,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAQ/C,qBAAa,wBAAwB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAEzF,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;;IAGpC;;;OAGG;IACH,IAAI,EAAE,CAAC;IACP;;;OAGG;IACH,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC;IACpC;;OAEG;IACH,MAAM,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"archive-data.service.d.ts","sourceRoot":"","sources":["../../../src/_services/base/archive-data.service.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EAGrB,aAAa,EACd,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAQ/C,qBAAa,wBAAwB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAEzF,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;;IAGpC;;;OAGG;IACH,IAAI,EAAE,CAAC;IACP;;;OAGG;IACH,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC;IACpC;;OAEG;IACH,MAAM,EAAE,MAAM;IA0BV,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA0CvC,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAoB/E,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IA4DpD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAsC1E"}
|
|
@@ -34,6 +34,14 @@ class DyNTS_ArchiveDataService extends data_service_1.DyNTS_DataService {
|
|
|
34
34
|
dataParams = {
|
|
35
35
|
...dataParams,
|
|
36
36
|
dataName: (0, archive_util_1.DyNTS_getArchivedDBName)(dataParams.dataName),
|
|
37
|
+
// An archive collection has NO archive-of-itself. Without this the archive service would inherit
|
|
38
|
+
// the parent's `addArchive: true` → `haveArchiveDataService = true` → base deleteData()/loadData()
|
|
39
|
+
// would call the (unimplemented) getArchiveDataService() and THROW
|
|
40
|
+
// "getArchiveDataService is not implemented!". That broke archive-rotation hard-deletes (e.g. the
|
|
41
|
+
// overseer build-report archive trim, which spun in a tight retry loop logging
|
|
42
|
+
// "Failed to delete old archive"). Forcing it false makes deleteData(id, true) hard-delete the
|
|
43
|
+
// archive record (the `absolute` branch), as intended.
|
|
44
|
+
addArchive: false,
|
|
37
45
|
};
|
|
38
46
|
super(data, dataParams, issuer);
|
|
39
47
|
this.originalDBService = global_service_1.DyNTS_GlobalService.getDBService(originalDataParams);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive-data.service.js","sourceRoot":"","sources":["../../../src/_services/base/archive-data.service.ts"],"names":[],"mappings":";;;AACA,sDAK+B;AAE/B,kEAA0E;AAC1E,2DAA6D;AAC7D,iDAAmD;AAEnD,oFAAiF;AAEjF,6CAA6C;AAC7C,mEAAmE;AACnE,gDAAgD;AAChD,yDAAyD;AAEzD,MAAa,wBAAkD,SAAQ,gCAAoB;IAEzF,iBAAiB,CAAqB;IAEtC;IACE;;;OAGG;IACH,IAAO;IACP;;;OAGG;IACH,UAAoC;IACpC;;OAEG;IACH,MAAc;QAEd,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,kBAAkB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;QAE7C,UAAU,GAAG;YACX,GAAG,UAAU;YACb,QAAQ,EAAE,IAAA,sCAAuB,EAAC,UAAU,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"archive-data.service.js","sourceRoot":"","sources":["../../../src/_services/base/archive-data.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -58,6 +58,19 @@ describe('| DyNTS_ArchiveDataService', () => {
|
|
|
58
58
|
expect(service.dataParams.dataName).toBe('test_data_archived');
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
+
it('| should NOT inherit haveArchiveDataService (an archive has no archive-of-itself)', () => {
|
|
62
|
+
// Regression guard: the archive service must NOT think it has its own archive, otherwise base
|
|
63
|
+
// deleteData()/loadData() call the unimplemented getArchiveDataService() and throw
|
|
64
|
+
// "getArchiveDataService is not implemented!" — which spun the overseer archive-rotation in a
|
|
65
|
+
// tight retry loop ("Failed to delete old archive"). The constructor forces addArchive:false.
|
|
66
|
+
const data = new TestMetadata();
|
|
67
|
+
|
|
68
|
+
const service = new DyNTS_ArchiveDataService(data, mockDataParams, 'issuer-123');
|
|
69
|
+
|
|
70
|
+
expect(service.haveArchiveDataService).toBe(false);
|
|
71
|
+
expect(service.dataParams.addArchive).toBe(false);
|
|
72
|
+
});
|
|
73
|
+
|
|
61
74
|
describe('| archiveDataById', () => {
|
|
62
75
|
it('| should throw error when id is missing', async () => {
|
|
63
76
|
const data = new TestMetadata();
|
|
@@ -42,12 +42,20 @@ export class DyNTS_ArchiveDataService<T extends DyFM_Metadata> extends DyNTS_Dat
|
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
const originalDataParams = { ...dataParams };
|
|
45
|
-
|
|
46
|
-
dataParams = {
|
|
45
|
+
|
|
46
|
+
dataParams = {
|
|
47
47
|
...dataParams,
|
|
48
48
|
dataName: DyNTS_getArchivedDBName(dataParams.dataName),
|
|
49
|
+
// An archive collection has NO archive-of-itself. Without this the archive service would inherit
|
|
50
|
+
// the parent's `addArchive: true` → `haveArchiveDataService = true` → base deleteData()/loadData()
|
|
51
|
+
// would call the (unimplemented) getArchiveDataService() and THROW
|
|
52
|
+
// "getArchiveDataService is not implemented!". That broke archive-rotation hard-deletes (e.g. the
|
|
53
|
+
// overseer build-report archive trim, which spun in a tight retry loop logging
|
|
54
|
+
// "Failed to delete old archive"). Forcing it false makes deleteData(id, true) hard-delete the
|
|
55
|
+
// archive record (the `absolute` branch), as intended.
|
|
56
|
+
addArchive: false,
|
|
49
57
|
};
|
|
50
|
-
|
|
58
|
+
|
|
51
59
|
super(data, dataParams, issuer);
|
|
52
60
|
|
|
53
61
|
this.originalDBService = DyNTS_GlobalService.getDBService<T>(originalDataParams);
|