@parmana/shared 0.1.0 → 2.0.0
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/README.md +1 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/config/Config.d.ts +25 -0
- package/dist/config/Config.d.ts.map +1 -1
- package/dist/config/Config.js +4 -4
- package/dist/config/Config.js.map +1 -1
- package/dist/config/ConfigValidation.d.ts +1 -1
- package/dist/config/ConfigValidation.d.ts.map +1 -1
- package/dist/config/ConfigValidation.js +25 -4
- package/dist/config/ConfigValidation.js.map +1 -1
- package/dist/config/CryptoAlgorithms.d.ts +0 -4
- package/dist/config/CryptoAlgorithms.d.ts.map +1 -1
- package/dist/config/CryptoAlgorithms.js +0 -4
- package/dist/config/CryptoAlgorithms.js.map +1 -1
- package/dist/config/Doctor.d.ts +46 -0
- package/dist/config/Doctor.d.ts.map +1 -0
- package/dist/config/Doctor.js +781 -0
- package/dist/config/Doctor.js.map +1 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -0
- package/dist/config/index.js.map +1 -1
- package/dist/domain/challenge-record.d.ts +4 -4
- package/dist/domain/decision.d.ts +9 -1
- package/dist/domain/decision.d.ts.map +1 -1
- package/dist/domain/decision.js.map +1 -1
- package/dist/domain/evidence-anchor.d.ts +1 -1
- package/dist/domain/execution-audit-event.d.ts +3 -3
- package/dist/domain/execution-authorization.d.ts +1 -1
- package/dist/domain/execution-intent.d.ts +1 -1
- package/dist/domain/execution-outcome-store.d.ts +1 -1
- package/dist/domain/execution-trust-record.d.ts +1 -1
- package/dist/domain/policy-reference.d.ts +1 -1
- package/dist/errors/outcome-unknown-error.d.ts +1 -1
- package/dist/errors/outcome-unknown-error.js +1 -1
- package/dist/repositories/business-transaction-repository.d.ts +1 -1
- package/dist/repositories/caller-key-revocation-repository.d.ts +26 -0
- package/dist/repositories/caller-key-revocation-repository.d.ts.map +1 -0
- package/dist/repositories/caller-key-revocation-repository.js +2 -0
- package/dist/repositories/caller-key-revocation-repository.js.map +1 -0
- package/dist/repositories/challenge-record-repository.d.ts +1 -1
- package/dist/repositories/challenge-record-repository.js +1 -1
- package/dist/repositories/execution-trust-record-repository.d.ts +1 -1
- package/dist/repositories/inbound-decision-repository.d.ts +72 -0
- package/dist/repositories/inbound-decision-repository.d.ts.map +1 -0
- package/dist/repositories/inbound-decision-repository.js +10 -0
- package/dist/repositories/inbound-decision-repository.js.map +1 -0
- package/dist/repositories/inbound-outcome-repository.d.ts +23 -0
- package/dist/repositories/inbound-outcome-repository.d.ts.map +1 -0
- package/dist/repositories/inbound-outcome-repository.js +2 -0
- package/dist/repositories/inbound-outcome-repository.js.map +1 -0
- package/dist/repositories/index.d.ts +3 -0
- package/dist/repositories/index.d.ts.map +1 -1
- package/dist/repositories/index.js +3 -0
- package/dist/repositories/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -12,14 +12,33 @@ function parse(value, values, name, defaultValue) {
|
|
|
12
12
|
}
|
|
13
13
|
throw new Error(`Invalid ${name}: ${resolved}`);
|
|
14
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* A value can be a documented name that no runtime implements yet. Refuse it
|
|
17
|
+
* at startup, naming what works, rather than accepting it and failing later
|
|
18
|
+
* or quietly using a different provider (#222). Called after parse(), so the
|
|
19
|
+
* value is already a known name and is safe to echo.
|
|
20
|
+
*/
|
|
21
|
+
function requireImplemented(name, value, implemented) {
|
|
22
|
+
if (implemented.includes(value)) {
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
throw new Error(`${name}=${value} is not implemented in this build. Use one of: ${implemented.join(", ")}.`);
|
|
26
|
+
}
|
|
27
|
+
const IMPLEMENTED_CRYPTO_MODES = [CryptoModes.SINGLE, CryptoModes.HYBRID];
|
|
28
|
+
const IMPLEMENTED_HASH_ALGORITHMS = [HashAlgorithms.SHA256];
|
|
29
|
+
const IMPLEMENTED_SIGNATURE_ALGORITHMS = [
|
|
30
|
+
SignatureAlgorithms.ED25519,
|
|
31
|
+
SignatureAlgorithms.DILITHIUM3,
|
|
32
|
+
];
|
|
33
|
+
const IMPLEMENTED_KEY_PROVIDERS = [KeyProviders.LOCAL, KeyProviders.AWS_KMS];
|
|
15
34
|
export const parseStorageProvider = (value) => {
|
|
16
35
|
if (process.env.DATABASE_PROVIDER !== undefined) {
|
|
17
36
|
throw new Error("DATABASE_PROVIDER is no longer read; set PARMANA_STORAGE instead.");
|
|
18
37
|
}
|
|
19
38
|
return parse(value, StorageProviders, "PARMANA_STORAGE", StorageProviders.MEMORY);
|
|
20
39
|
};
|
|
21
|
-
export const parseCryptoMode = (value) => parse(value, CryptoModes, "CRYPTO_MODE", CryptoModes.SINGLE);
|
|
22
|
-
export const parseHashAlgorithm = (value) => parse(value, HashAlgorithms, "HASH_PROVIDER", HashAlgorithms.SHA256);
|
|
40
|
+
export const parseCryptoMode = (value) => requireImplemented("CRYPTO_MODE", parse(value, CryptoModes, "CRYPTO_MODE", CryptoModes.SINGLE), IMPLEMENTED_CRYPTO_MODES);
|
|
41
|
+
export const parseHashAlgorithm = (value) => requireImplemented("HASH_PROVIDER", parse(value, HashAlgorithms, "HASH_PROVIDER", HashAlgorithms.SHA256), IMPLEMENTED_HASH_ALGORITHMS);
|
|
23
42
|
/**
|
|
24
43
|
* Accepted input aliases for a SignatureAlgorithm config value, resolved
|
|
25
44
|
* to the canonical internal identifier before validation. Additive only:
|
|
@@ -33,8 +52,10 @@ export const parseHashAlgorithm = (value) => parse(value, HashAlgorithms, "HASH_
|
|
|
33
52
|
const SIGNATURE_ALGORITHM_ALIASES = {
|
|
34
53
|
"ml-dsa-65": SignatureAlgorithms.DILITHIUM3,
|
|
35
54
|
};
|
|
36
|
-
export const parseSignatureAlgorithm = (value) => parse(value !== undefined
|
|
37
|
-
|
|
55
|
+
export const parseSignatureAlgorithm = (value, variable = "PRIMARY_SIGNATURE_PROVIDER") => requireImplemented(variable, parse(value !== undefined
|
|
56
|
+
? (SIGNATURE_ALGORITHM_ALIASES[value] ?? value)
|
|
57
|
+
: value, SignatureAlgorithms, "SIGNATURE_PROVIDER", SignatureAlgorithms.ED25519), IMPLEMENTED_SIGNATURE_ALGORITHMS);
|
|
58
|
+
export const parseKeyProvider = (value) => requireImplemented("KEY_PROVIDER", parse(value, KeyProviders, "KEY_PROVIDER", KeyProviders.LOCAL), IMPLEMENTED_KEY_PROVIDERS);
|
|
38
59
|
/**
|
|
39
60
|
* Unlike the other settings, an invalid value is not echoed: a value set
|
|
40
61
|
* in the wrong variable can be a real secret (a token pasted into
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigValidation.js","sourceRoot":"","sources":["../../src/config/ConfigValidation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,EAEd,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAoB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAqB,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,SAAS,KAAK,CACZ,KAAyB,EACzB,MAAyB,EACzB,IAAY,EACZ,YAAe;IAEf,MAAM,QAAQ,GAAG,KAAK,IAAI,YAAY,CAAC;IAEvC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAa,CAAC,EAAE,CAAC;QAClD,OAAO,QAAa,CAAC;IACvB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAmB,EAAE;IACtE,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CACV,KAAK,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,CAAC,MAAM,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAAc,EAAE,CAC5D,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigValidation.js","sourceRoot":"","sources":["../../src/config/ConfigValidation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAEX,cAAc,EAEd,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAoB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAqB,MAAM,oBAAoB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,SAAS,KAAK,CACZ,KAAyB,EACzB,MAAyB,EACzB,IAAY,EACZ,YAAe;IAEf,MAAM,QAAQ,GAAG,KAAK,IAAI,YAAY,CAAC;IAEvC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAa,CAAC,EAAE,CAAC;QAClD,OAAO,QAAa,CAAC;IACvB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CACzB,IAAY,EACZ,KAAQ,EACR,WAAyB;IAEzB,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,IAAI,KAAK,kDAAkD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC5F,CAAC;AACJ,CAAC;AAED,MAAM,wBAAwB,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;AAC1E,MAAM,2BAA2B,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AAC5D,MAAM,gCAAgC,GAAG;IACvC,mBAAmB,CAAC,OAAO;IAC3B,mBAAmB,CAAC,UAAU;CAC/B,CAAC;AACF,MAAM,yBAAyB,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;AAE7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAmB,EAAE;IACtE,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CACV,KAAK,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,CAAC,MAAM,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAc,EAAc,EAAE,CAC5D,kBAAkB,CAChB,aAAa,EACb,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,EAC5D,wBAAwB,CACzB,CAAC;AAEJ,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAiB,EAAE,CAClE,kBAAkB,CAChB,eAAe,EACf,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,EACpE,2BAA2B,CAC5B,CAAC;AAEJ;;;;;;;;;GASG;AACH,MAAM,2BAA2B,GAAuC;IACtE,WAAW,EAAE,mBAAmB,CAAC,UAAU;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,KAAc,EACd,QAAQ,GAAG,4BAA4B,EACnB,EAAE,CACtB,kBAAkB,CAChB,QAAQ,EACR,KAAK,CACH,KAAK,KAAK,SAAS;IACjB,CAAC,CAAC,CAAC,2BAA2B,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;IAC/C,CAAC,CAAC,KAAK,EACT,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,CAAC,OAAO,CAC5B,EACD,gCAAgC,CACjC,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAe,EAAE,CAC9D,kBAAkB,CAChB,cAAc,EACd,KAAK,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,EAC9D,yBAAyB,CAC1B,CAAC;AAEJ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAmB,EAAE;IACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC;IAE9D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,gBAAgB,CAAC,GAAG,CAAC;IAC9B,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,qDAAqD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3E,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAgB,EAAE,CAChE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;AAEjE,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAe,CAAC;IAEpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,2DAA2D;YACzD,oDAAoD,CACvD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,2CAA2C;YACzC,oDAAoD,CACvD,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAe,EAAE;QAC9C,MAAM,MAAM,GAAG,KAAgC,CAAC;QAEhD,MAAM,UAAU,GACd,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;YACnC,MAAM,CAAC,QAAQ,KAAK,EAAE;YACtB,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;YAClC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,mCAAmC;gBAC1D,0EAA0E,CAC7E,CAAC;QACJ,CAAC;QAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAEvD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,wBAAwB,GAC5B,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBAClC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAEzE,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,yCAAyC;oBAChE,oCAAoC,CACvC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAEvD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,wBAAwB,GAC5B,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBAClC,mBAAmB,CAAC,KAAK,CACvB,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,EAAE,CACpE,CAAC;YAEJ,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,yCAAyC;oBAChE,4DAA4D;oBAC5D,yBAAyB,CAC5B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAEjD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,qBAAqB,GACzB,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;gBAC/B,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAEtE,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,sCAAsC;oBAC7D,oCAAoC,CACvC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QAEzD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,yBAAyB,GAC7B,OAAO,oBAAoB,KAAK,QAAQ;gBACxC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CACnC,oBAAqC,CACtC,CAAC;YAEJ,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,wCAAwC;oBAC/D,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAC7D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAE/C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,UAAU,GACd,OAAO,eAAe,KAAK,QAAQ,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YAEvE,IAAI,QAAQ,GAAG,KAAK,CAAC;YAErB,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,eAAe,CAAC,eAAyB,CAAC,CAAC;oBAC7D,QAAQ,GAAG,SAAS,CAAC,iBAAiB,KAAK,SAAS,CAAC;gBACvD,CAAC;gBAAC,MAAM,CAAC;oBACP,QAAQ,GAAG,KAAK,CAAC;gBACnB,CAAC;YACH,CAAC;YAED,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,0CAA0C;oBACjE,kCAAkC,CACrC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAkB;YACnC,OAAO,EAAE,MAAM,CAAC,OAAiB;YACjC,GAAG,CAAC,mBAAmB,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE,mBAAmB,EAAE,mBAAwC,EAAE;gBACnE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,mBAAmB,KAAK,SAAS;gBACnC,CAAC,CAAC,EAAE,mBAAmB,EAAE,mBAAwC,EAAE;gBACnE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,gBAAgB,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAqC,EAAE;gBAC7D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,oBAAoB,KAAK,SAAS;gBACpC,CAAC,CAAC,EAAE,oBAAoB,EAAE,oBAAqC,EAAE;gBACjE,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,eAAe,KAAK,SAAS;gBAC/B,CAAC,CAAC,EAAE,eAAe,EAAE,eAAyB,EAAE;gBAChD,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -29,14 +29,10 @@ export type SignatureAlgorithm = (typeof SignatureAlgorithms)[keyof typeof Signa
|
|
|
29
29
|
* hybrid: PRIMARY_SIGNATURE_PROVIDER and SECONDARY_SIGNATURE_PROVIDER
|
|
30
30
|
* both sign Execution Trust Records and Receipts; verification
|
|
31
31
|
* requires both to pass. See HybridSignatureProvider (@parmana/crypto).
|
|
32
|
-
*
|
|
33
|
-
* pq: reserved for a future post-quantum-only mode. Not read by any
|
|
34
|
-
* production call site today.
|
|
35
32
|
*/
|
|
36
33
|
export declare const CryptoModes: {
|
|
37
34
|
readonly SINGLE: "single";
|
|
38
35
|
readonly HYBRID: "hybrid";
|
|
39
|
-
readonly PQ: "pq";
|
|
40
36
|
};
|
|
41
37
|
export type CryptoMode = (typeof CryptoModes)[keyof typeof CryptoModes];
|
|
42
38
|
//# sourceMappingURL=CryptoAlgorithms.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoAlgorithms.d.ts","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc;aACzB,MAAM,EAAE,QAAQ;aAChB,OAAO,EAAE,UAAU;aACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,mBAAmB;aAC9B,OAAO,EAAE,SAAS;aAClB,UAAU,EAAE,YAAY;aAKxB,UAAU,EAAE,YAAY;aACxB,UAAU,EAAE,YAAY;aACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE
|
|
1
|
+
{"version":3,"file":"CryptoAlgorithms.d.ts","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc;aACzB,MAAM,EAAE,QAAQ;aAChB,OAAO,EAAE,UAAU;aACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAEX,MAAM,MAAM,aAAa,GACvB,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,mBAAmB;aAC9B,OAAO,EAAE,SAAS;aAClB,UAAU,EAAE,YAAY;aAKxB,UAAU,EAAE,YAAY;aACxB,UAAU,EAAE,YAAY;aACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAC;AAEjE;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW;aACtB,MAAM,EAAE,QAAQ;aAChB,MAAM,EAAE,QAAQ;CACR,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC"}
|
|
@@ -30,13 +30,9 @@ export const SignatureAlgorithms = {
|
|
|
30
30
|
* hybrid: PRIMARY_SIGNATURE_PROVIDER and SECONDARY_SIGNATURE_PROVIDER
|
|
31
31
|
* both sign Execution Trust Records and Receipts; verification
|
|
32
32
|
* requires both to pass. See HybridSignatureProvider (@parmana/crypto).
|
|
33
|
-
*
|
|
34
|
-
* pq: reserved for a future post-quantum-only mode. Not read by any
|
|
35
|
-
* production call site today.
|
|
36
33
|
*/
|
|
37
34
|
export const CryptoModes = {
|
|
38
35
|
SINGLE: "single",
|
|
39
36
|
HYBRID: "hybrid",
|
|
40
|
-
PQ: "pq",
|
|
41
37
|
};
|
|
42
38
|
//# sourceMappingURL=CryptoAlgorithms.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoAlgorithms.js","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAKX;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IAExB,EAAE;IACF,qBAAqB;IACrB,EAAE;IACF,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAKX
|
|
1
|
+
{"version":3,"file":"CryptoAlgorithms.js","sourceRoot":"","sources":["../../src/config/CryptoAlgorithms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,QAAQ;CACR,CAAC;AAKX;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IAExB,EAAE;IACF,qBAAqB;IACrB,EAAE;IACF,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,YAAY,EAAE,cAAc;CACpB,CAAC;AAKX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;CACR,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One check from the configuration doctor. "pass" means the setting is valid,
|
|
3
|
+
* "warn" means it works but needs attention, and "fail" means the server would
|
|
4
|
+
* refuse to start, or would refuse requests. A fail always carries a fix.
|
|
5
|
+
*/
|
|
6
|
+
export interface DoctorCheck {
|
|
7
|
+
readonly name: string;
|
|
8
|
+
readonly level: "pass" | "warn" | "fail";
|
|
9
|
+
readonly message: string;
|
|
10
|
+
readonly fix?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface DoctorReaders {
|
|
13
|
+
readonly directoryExists: (path: string) => boolean;
|
|
14
|
+
/** Names of the entries in a folder. Empty when the folder cannot be read. */
|
|
15
|
+
readonly listDirectory: (path: string) => string[];
|
|
16
|
+
readonly readFile: (path: string) => string;
|
|
17
|
+
}
|
|
18
|
+
export interface DoctorOptions {
|
|
19
|
+
/**
|
|
20
|
+
* Apply the production rules as well. The server refuses several settings
|
|
21
|
+
* when NODE_ENV=production, and some storage and key choices are only valid
|
|
22
|
+
* in production. Without this, the local rules apply.
|
|
23
|
+
*/
|
|
24
|
+
readonly production: boolean;
|
|
25
|
+
}
|
|
26
|
+
type Env = Readonly<Record<string, string | undefined>>;
|
|
27
|
+
/**
|
|
28
|
+
* Every PARMANA_ name read by this repository. A name outside this list is
|
|
29
|
+
* reported as a probable typo, because the server ignores it without a word.
|
|
30
|
+
*/
|
|
31
|
+
export declare const KNOWN_PARMANA_SETTINGS: readonly string[];
|
|
32
|
+
/**
|
|
33
|
+
* Runs the configuration checks and returns every result, not just the first
|
|
34
|
+
* failure. With `production: true`, the production rules are added and the
|
|
35
|
+
* stage 1 "not yet checked" warnings are replaced by real checks.
|
|
36
|
+
*
|
|
37
|
+
* Each setting is checked with the same parser the server uses, so a check
|
|
38
|
+
* cannot pass here and fail at startup. Parser error messages are never shown,
|
|
39
|
+
* because some of them echo the value they rejected. Messages name the setting
|
|
40
|
+
* and the allowed values only.
|
|
41
|
+
*/
|
|
42
|
+
export declare function diagnoseConfiguration(env: Env, readers: DoctorReaders, options?: DoctorOptions): DoctorCheck[];
|
|
43
|
+
/** The known setting within two edits of the given name, if there is one. */
|
|
44
|
+
export declare function closestSetting(name: string): string | undefined;
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=Doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Doctor.d.ts","sourceRoot":"","sources":["../../src/config/Doctor.ts"],"names":[],"mappings":"AAqBA;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACpD,8EAA8E;IAC9E,QAAQ,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,KAAK,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAYxD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EA0BnD,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,aAAa,EACtB,OAAO,GAAE,aAAqC,GAC7C,WAAW,EAAE,CAsBf;AAoyBD,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW/D"}
|