usertrust 1.0.0 → 1.1.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/dist/cli/init.d.ts +2 -0
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +231 -37
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +18 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/pricing.d.ts +5 -0
- package/dist/cli/pricing.d.ts.map +1 -0
- package/dist/cli/pricing.js +61 -0
- package/dist/cli/pricing.js.map +1 -0
- package/dist/cli/validate-key.d.ts +17 -0
- package/dist/cli/validate-key.d.ts.map +1 -0
- package/dist/cli/validate-key.js +58 -0
- package/dist/cli/validate-key.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +31 -0
- package/dist/config.js.map +1 -1
- package/dist/govern.d.ts +3 -1
- package/dist/govern.d.ts.map +1 -1
- package/dist/govern.js +415 -47
- package/dist/govern.js.map +1 -1
- package/dist/headless.d.ts +77 -0
- package/dist/headless.d.ts.map +1 -0
- package/dist/headless.js +566 -0
- package/dist/headless.js.map +1 -0
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -1
- package/dist/index.js.map +1 -1
- package/dist/ledger/pricing.d.ts +6 -2
- package/dist/ledger/pricing.d.ts.map +1 -1
- package/dist/ledger/pricing.js +31 -3
- package/dist/ledger/pricing.js.map +1 -1
- package/dist/policy/canary.d.ts +17 -0
- package/dist/policy/canary.d.ts.map +1 -0
- package/dist/policy/canary.js +44 -0
- package/dist/policy/canary.js.map +1 -0
- package/dist/policy/injection.d.ts +24 -0
- package/dist/policy/injection.d.ts.map +1 -0
- package/dist/policy/injection.js +178 -0
- package/dist/policy/injection.js.map +1 -0
- package/dist/policy/pii.d.ts +13 -1
- package/dist/policy/pii.d.ts.map +1 -1
- package/dist/policy/pii.js +88 -0
- package/dist/policy/pii.js.map +1 -1
- package/dist/shared/errors.d.ts +20 -0
- package/dist/shared/errors.d.ts.map +1 -1
- package/dist/shared/errors.js +46 -0
- package/dist/shared/errors.js.map +1 -1
- package/dist/shared/types.d.ts +264 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js +67 -0
- package/dist/shared/types.js.map +1 -1
- package/dist/supply-chain/manifest.d.ts +22 -0
- package/dist/supply-chain/manifest.d.ts.map +1 -0
- package/dist/supply-chain/manifest.js +46 -0
- package/dist/supply-chain/manifest.js.map +1 -0
- package/dist/supply-chain/permissions.d.ts +12 -0
- package/dist/supply-chain/permissions.d.ts.map +1 -0
- package/dist/supply-chain/permissions.js +89 -0
- package/dist/supply-chain/permissions.js.map +1 -0
- package/dist/supply-chain/sign.d.ts +17 -0
- package/dist/supply-chain/sign.d.ts.map +1 -0
- package/dist/supply-chain/sign.js +95 -0
- package/dist/supply-chain/sign.js.map +1 -0
- package/dist/vault/derive.d.ts +13 -0
- package/dist/vault/derive.d.ts.map +1 -0
- package/dist/vault/derive.js +32 -0
- package/dist/vault/derive.js.map +1 -0
- package/dist/vault/scope.d.ts +20 -0
- package/dist/vault/scope.d.ts.map +1 -0
- package/dist/vault/scope.js +35 -0
- package/dist/vault/scope.js.map +1 -0
- package/dist/vault/store.d.ts +31 -0
- package/dist/vault/store.d.ts.map +1 -0
- package/dist/vault/store.js +204 -0
- package/dist/vault/store.js.map +1 -0
- package/package.json +13 -2
package/dist/config.js
CHANGED
|
@@ -5,6 +5,31 @@ import { readFile } from "node:fs/promises";
|
|
|
5
5
|
import { join } from "node:path";
|
|
6
6
|
import { VAULT_DIR } from "./shared/constants.js";
|
|
7
7
|
import { TrustConfigSchema } from "./shared/types.js";
|
|
8
|
+
/** Valid env var name: starts with letter or underscore, alphanumeric + underscore only. */
|
|
9
|
+
const ENV_KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
|
|
10
|
+
/** Parse a simple KEY=VALUE .env file. Only sets vars not already in process.env. */
|
|
11
|
+
function loadEnvFile(content) {
|
|
12
|
+
for (const line of content.split("\n")) {
|
|
13
|
+
const trimmed = line.trim();
|
|
14
|
+
if (trimmed === "" || trimmed.startsWith("#"))
|
|
15
|
+
continue;
|
|
16
|
+
const eqIdx = trimmed.indexOf("=");
|
|
17
|
+
if (eqIdx === -1)
|
|
18
|
+
continue;
|
|
19
|
+
const key = trimmed.slice(0, eqIdx);
|
|
20
|
+
if (!ENV_KEY_RE.test(key))
|
|
21
|
+
continue;
|
|
22
|
+
let value = trimmed.slice(eqIdx + 1);
|
|
23
|
+
// Strip surrounding quotes (single or double)
|
|
24
|
+
if ((value.startsWith('"') && value.endsWith('"')) ||
|
|
25
|
+
(value.startsWith("'") && value.endsWith("'"))) {
|
|
26
|
+
value = value.slice(1, -1);
|
|
27
|
+
}
|
|
28
|
+
if (process.env[key] === undefined) {
|
|
29
|
+
process.env[key] = value;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
8
33
|
/**
|
|
9
34
|
* Load trust config from `.usertrust/usertrust.config.json`, merged with
|
|
10
35
|
* optional runtime overrides. Returns a validated TrustConfig.
|
|
@@ -14,6 +39,12 @@ import { TrustConfigSchema } from "./shared/types.js";
|
|
|
14
39
|
*/
|
|
15
40
|
export async function loadConfig(overrides, vaultBase) {
|
|
16
41
|
const base = vaultBase ?? process.cwd();
|
|
42
|
+
// Load .usertrust/.env if it exists (API keys from init wizard)
|
|
43
|
+
const envPath = join(base, VAULT_DIR, ".env");
|
|
44
|
+
if (existsSync(envPath)) {
|
|
45
|
+
const envContent = await readFile(envPath, "utf-8");
|
|
46
|
+
loadEnvFile(envContent);
|
|
47
|
+
}
|
|
17
48
|
const configPath = join(base, VAULT_DIR, "usertrust.config.json");
|
|
18
49
|
let raw = {};
|
|
19
50
|
if (existsSync(configPath)) {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,SAAgC,EAChC,SAAkB;IAElB,MAAM,IAAI,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/govern.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type AuditWriter } from "./audit/chain.js";
|
|
2
|
+
import type { ActionDescriptor, GovernedActionResult } from "./shared/types.js";
|
|
2
3
|
export interface TrustOpts {
|
|
3
4
|
/** Path to usertrust.config.json. Defaults to `.usertrust/usertrust.config.json`. */
|
|
4
5
|
configPath?: string;
|
|
@@ -43,9 +44,10 @@ export interface TrustEngine {
|
|
|
43
44
|
voidAllPending?(): Promise<void>;
|
|
44
45
|
destroy?(): void;
|
|
45
46
|
}
|
|
46
|
-
/** The trusted client: original client shape +
|
|
47
|
+
/** The trusted client: original client shape + governance methods. */
|
|
47
48
|
export type TrustedClient<T> = T & {
|
|
48
49
|
destroy(): Promise<void>;
|
|
50
|
+
governAction<R>(action: ActionDescriptor, execute: () => Promise<R>): Promise<GovernedActionResult<R>>;
|
|
49
51
|
};
|
|
50
52
|
export declare function trust<T>(client: T, opts?: TrustOpts): Promise<TrustedClient<T>>;
|
|
51
53
|
//# sourceMappingURL=govern.d.ts.map
|
package/dist/govern.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"govern.d.ts","sourceRoot":"","sources":["../src/govern.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"govern.d.ts","sourceRoot":"","sources":["../src/govern.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAmBvE,OAAO,KAAK,EACX,gBAAgB,EAChB,oBAAoB,EAKpB,MAAM,mBAAmB,CAAC;AAK3B,MAAM,WAAW,SAAS;IACzB,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC3B,YAAY,CAAC,MAAM,EAAE;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpC,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,gEAAgE;IAChE,cAAc,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,CAAC,IAAI,IAAI,CAAC;CACjB;AAED,sEAAsE;AACtE,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG;IAClC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,YAAY,CAAC,CAAC,EACb,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;CACpC,CAAC;AAyEF,wBAAsB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAs/BrF"}
|