@futdevpro/nts-dynamo 1.15.345 → 1.15.348

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.
@@ -7,6 +7,10 @@
7
7
  export interface DyNTS_ClientSafeError_Response {
8
8
  _message: string;
9
9
  _errorCode?: string;
10
+ /**
11
+ * The APPLICATION codes of the chain, in chain order (inner first) — framework-internal codes (`DyFM-` / `DyNTS-` …)
12
+ * stay server-side (BFR-FDPAUTHSERVICE-002); `[]` when the chain held framework codes only.
13
+ */
10
14
  _errorCodes?: string[];
11
15
  __userMessage: string;
12
16
  __userMessages?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"client-safe-error-response.interface.d.ts","sourceRoot":"","sources":["../../src/_collections/client-safe-error-response.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C"}
1
+ {"version":3,"file":"client-safe-error-response.interface.d.ts","sourceRoot":"","sources":["../../src/_collections/client-safe-error-response.interface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C"}
@@ -24,6 +24,24 @@ export declare class DyNTS_ClientSafeError_Util {
24
24
  * the source error); anything else (arrays, class instances, cycles, oversized) is dropped.
25
25
  */
26
26
  private static publicJsonObject;
27
+ /**
28
+ * BFR-FDPAUTHSERVICE-002 (c): the public projection of the code chain — the framework-internal codes
29
+ * (`DyFM-` / `DyNTS-` / `DyNX_` … — the same `DyFM_errorĐFlagParts` that `DyFM_Error` already skips when it picks
30
+ * `_errorCode`) and the `NO-ERROR-CODE` placeholder stay server-side; every application code stays, in chain order.
31
+ *
32
+ * Why not "the outermost code only": clients branch on INNER application codes of the chain — e.g. the
33
+ * email-verification redirect checks `_errorCodes.includes('FAS-ACS-VRL7')` (8 client interceptors, measured
34
+ * 2026-09-24). No fleet code branches on a framework code read from a response: server-to-server callers stopped
35
+ * absorbing remote chains in 01.15.181 (the allowlist body carries no `flag`), and every framework-code check found is
36
+ * on an in-process error. The full chain remains in the error store and the log.
37
+ *
38
+ * `_errorCode` is deliberately NOT filtered here: it already is the first non-framework code whenever the chain has
39
+ * one, and it is the support handle the clients display.
40
+ *
41
+ * ⚠️ A chain of framework codes only yields `[]`, NOT a missing field: 4 client interceptors call
42
+ * `_errorCodes.includes(…)` without optional chaining (ccap, credit, futdevpro, overseer — measured).
43
+ */
44
+ private static publicErrorCodes;
27
45
  private static nonEmptyString;
28
46
  private static stringArray;
29
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-safe-error.util.d.ts","sourceRoot":"","sources":["../../src/_collections/client-safe-error.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF;;;;;GAKG;AACH,qBAAa,0BAA0B;IAErC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CACsC;IAElF,oGAAoG;IACpG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAQ;IAErD;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,8BAA8B,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;IAkDzF;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAoB/B,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B,OAAO,CAAC,MAAM,CAAC,WAAW;CAS3B"}
1
+ {"version":3,"file":"client-safe-error.util.d.ts","sourceRoot":"","sources":["../../src/_collections/client-safe-error.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF;;;;;GAKG;AACH,qBAAa,0BAA0B;IAErC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CACsC;IAElF,oGAAoG;IACpG,MAAM,CAAC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAQ;IAErD;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,8BAA8B,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;IAkDzF;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAoB/B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAO/B,OAAO,CAAC,MAAM,CAAC,cAAc;IAI7B,OAAO,CAAC,MAAM,CAAC,WAAW;CAS3B"}
@@ -31,7 +31,7 @@ class DyNTS_ClientSafeError_Util {
31
31
  __userMessage: userMessage,
32
32
  };
33
33
  const errorCode = DyNTS_ClientSafeError_Util.nonEmptyString(source._errorCode);
34
- const errorCodes = DyNTS_ClientSafeError_Util.stringArray(source._errorCodes);
34
+ const errorCodes = DyNTS_ClientSafeError_Util.publicErrorCodes(source._errorCodes);
35
35
  const userMessages = DyNTS_ClientSafeError_Util.stringArray(source.__userMessages);
36
36
  const status = source.___status;
37
37
  const level = source.level;
@@ -79,6 +79,27 @@ class DyNTS_ClientSafeError_Util {
79
79
  return undefined;
80
80
  }
81
81
  }
82
+ /**
83
+ * BFR-FDPAUTHSERVICE-002 (c): the public projection of the code chain — the framework-internal codes
84
+ * (`DyFM-` / `DyNTS-` / `DyNX_` … — the same `DyFM_errorĐFlagParts` that `DyFM_Error` already skips when it picks
85
+ * `_errorCode`) and the `NO-ERROR-CODE` placeholder stay server-side; every application code stays, in chain order.
86
+ *
87
+ * Why not "the outermost code only": clients branch on INNER application codes of the chain — e.g. the
88
+ * email-verification redirect checks `_errorCodes.includes('FAS-ACS-VRL7')` (8 client interceptors, measured
89
+ * 2026-09-24). No fleet code branches on a framework code read from a response: server-to-server callers stopped
90
+ * absorbing remote chains in 01.15.181 (the allowlist body carries no `flag`), and every framework-code check found is
91
+ * on an in-process error. The full chain remains in the error store and the log.
92
+ *
93
+ * `_errorCode` is deliberately NOT filtered here: it already is the first non-framework code whenever the chain has
94
+ * one, and it is the support handle the clients display.
95
+ *
96
+ * ⚠️ A chain of framework codes only yields `[]`, NOT a missing field: 4 client interceptors call
97
+ * `_errorCodes.includes(…)` without optional chaining (ccap, credit, futdevpro, overseer — measured).
98
+ */
99
+ static publicErrorCodes(value) {
100
+ return DyNTS_ClientSafeError_Util.stringArray(value)?.filter((code) => code !== fsm_dynamo_1.DyFM_error_defaults.errorCode
101
+ && !fsm_dynamo_1.DyFM_errorĐFlagParts.some((part) => code.includes(part)));
102
+ }
82
103
  static nonEmptyString(value) {
83
104
  return typeof value === 'string' && value.length > 0 ? value : undefined;
84
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-safe-error.util.js","sourceRoot":"","sources":["../../src/_collections/client-safe-error.util.ts"],"names":[],"mappings":";;;AAAA,sDAAmD;AAInD;;;;;GAKG;AACH,MAAa,0BAA0B;IAE7B,MAAM,CAAU,oBAAoB,GAC1C,+EAA+E,CAAC;IAElF,oGAAoG;IACpG,MAAM,CAAU,qBAAqB,GAAW,IAAI,CAAC;IAErD;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,KAAc;QAChC,IAAI,CAAC,uBAAU,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,OAAO,EAAE,0BAA0B,CAAC,oBAAoB,EAAE,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAe,KAAK,CAAC;QACjC,MAAM,WAAW,GAAW,0BAA0B,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;eACtF,0BAA0B,CAAC,oBAAoB,CAAC;QACrD,MAAM,QAAQ,GAAmC;YAC/C,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,WAAW;SAC3B,CAAC;QACF,MAAM,SAAS,GAAuB,0BAA0B,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnG,MAAM,UAAU,GAAyB,0BAA0B,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACpG,MAAM,YAAY,GAAyB,0BAA0B,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzG,MAAM,MAAM,GAAY,MAAM,CAAC,SAAS,CAAC;QACzC,MAAM,KAAK,GAAY,MAAM,CAAC,KAAK,CAAC;QAEpC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC;QACpC,CAAC;QAED,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,QAAQ,CAAC,cAAc,GAAG,YAAY,CAAC;QACzC,CAAC;QAED,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1D,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC;QAC9B,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACvF,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,CAAC;QAED,+GAA+G;QAC/G,yGAAyG;QACzG,MAAM,aAAa,GACjB,0BAA0B,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAEtF,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,QAAQ,CAAC,eAAe,GAAG,aAAa,CAAC;QAC3C,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,gBAAgB,CAAC,KAAc;QAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;eAClE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;YACvD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAW,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAEjD,IAAI,UAAU,CAAC,MAAM,GAAG,0BAA0B,CAAC,qBAAqB,EAAE,CAAC;gBACzE,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,IAAI,GAAY,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAE7C,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1G,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,cAAc,CAAC,KAAc;QAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,KAAc;QACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,OAAO,GAAa,KAAK,CAAC,MAAM,CAAC,CAAC,KAAc,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;QAEvG,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,GAAG,OAAO,CAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,CAAC;;AArGH,gEAsGC"}
1
+ {"version":3,"file":"client-safe-error.util.js","sourceRoot":"","sources":["../../src/_collections/client-safe-error.util.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,16 @@
3
3
  */
4
4
  export declare class DyNTS_Singleton_ServiceBase {
5
5
  protected static instance: any;
6
+ /**
7
+ * The singleton of the class it is CALLED ON (`this`).
8
+ *
9
+ * BFR-CREDIT-048 (credit `4dd9f9d7`): static fields are inherited through the constructor prototype chain, so
10
+ * the former `if (!this.instance)` found an ANCESTOR's instance once that ancestor had been instantiated — a
11
+ * subclass `getInstance()` then returned the PARENT object and its overrides never ran (measured in the credit with
12
+ * the real bedrock code: `FDPNTS_Default_Auth_ApiService` is created at server start, the subclass got it).
13
+ * Only an OWN `instance` counts now. Backward compatible: an own `instance` (created here, assigned by the class
14
+ * itself, or reset to `undefined` by a spec) behaves exactly as before.
15
+ */
6
16
  protected static getSingletonInstance(): any;
7
17
  protected constructor();
8
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"singleton.service-base.d.ts","sourceRoot":"","sources":["../../../src/_services/base/singleton.service-base.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,2BAA2B;IAQtC,SAAS,CAAC,MAAM,CAAC,QAAQ,MAAC;IAG1B,SAAS,CAAC,MAAM,CAAC,oBAAoB;IAUrC,SAAS;CAEV;AAGD,qFAAqF;AACrF,OAAO,EAAE,2BAA2B,IAAI,0BAA0B,EAAE,CAAC"}
1
+ {"version":3,"file":"singleton.service-base.d.ts","sourceRoot":"","sources":["../../../src/_services/base/singleton.service-base.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,qBAAa,2BAA2B;IAQtC,SAAS,CAAC,MAAM,CAAC,QAAQ,MAAC;IAE1B;;;;;;;;;OASG;IAEH,SAAS,CAAC,MAAM,CAAC,oBAAoB;IAUrC,SAAS;CAEV;AAGD,qFAAqF;AACrF,OAAO,EAAE,2BAA2B,IAAI,0BAA0B,EAAE,CAAC"}
@@ -11,9 +11,19 @@ class DyNTS_Singleton_ServiceBase {
11
11
  }
12
12
  /// --- --- --- SINGLETON --- --- --- \\\
13
13
  static instance;
14
+ /**
15
+ * The singleton of the class it is CALLED ON (`this`).
16
+ *
17
+ * BFR-CREDIT-048 (credit `4dd9f9d7`): static fields are inherited through the constructor prototype chain, so
18
+ * the former `if (!this.instance)` found an ANCESTOR's instance once that ancestor had been instantiated — a
19
+ * subclass `getInstance()` then returned the PARENT object and its overrides never ran (measured in the credit with
20
+ * the real bedrock code: `FDPNTS_Default_Auth_ApiService` is created at server start, the subclass got it).
21
+ * Only an OWN `instance` counts now. Backward compatible: an own `instance` (created here, assigned by the class
22
+ * itself, or reset to `undefined` by a spec) behaves exactly as before.
23
+ */
14
24
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
15
25
  static getSingletonInstance() {
16
- if (!this.instance) {
26
+ if (!Object.prototype.hasOwnProperty.call(this, 'instance') || !this.instance) {
17
27
  this.instance = new this();
18
28
  }
19
29
  return this.instance;
@@ -1 +1 @@
1
- {"version":3,"file":"singleton.service-base.js","sourceRoot":"","sources":["../../../src/_services/base/singleton.service-base.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,MAAa,2BAA2B;IACtC,uEAAuE;IACvE;QACE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC,CAAC;IAC/E,CAAC;IAGD,iEAAiE;IACvD,MAAM,CAAC,QAAQ,CAAC;IAE1B,4EAA4E;IAClE,MAAM,CAAC,oBAAoB;QACnC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,iEAAiE;IAEjE,qDAAqD;IACrD,gBAAyB,CAAC;CAE3B;AAvBD,kEAuBC;AAIuC,iEAA0B"}
1
+ {"version":3,"file":"singleton.service-base.js","sourceRoot":"","sources":["../../../src/_services/base/singleton.service-base.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,MAAa,2BAA2B;IACtC,uEAAuE;IACvE;QACE,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,4BAA4B,EAAE,CAAC,CAAC;IAC/E,CAAC;IAGD,iEAAiE;IACvD,MAAM,CAAC,QAAQ,CAAC;IAE1B;;;;;;;;;OASG;IACH,4EAA4E;IAClE,MAAM,CAAC,oBAAoB;QACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9E,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,iEAAiE;IAEjE,qDAAqD;IACrD,gBAAyB,CAAC;CAE3B;AAjCD,kEAiCC;AAIuC,iEAA0B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@futdevpro/nts-dynamo",
3
- "version": "01.15.345",
3
+ "version": "01.15.348",
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",
@@ -512,7 +512,7 @@
512
512
  }
513
513
  },
514
514
  "devDependencies": {
515
- "@futdevpro/fsm-dynamo": "1.20.88",
515
+ "@futdevpro/fsm-dynamo": "1.20.92",
516
516
  "@futdevpro/dynamo-eslint": "1.20.51",
517
517
  "@discordjs/opus": "^0.10.0",
518
518
  "@discordjs/voice": "^0.18.0",