@stratum-hq/core 1.5.0 → 1.6.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 CHANGED
@@ -1,6 +1,8 @@
1
1
  # @stratum-hq/core
2
2
 
3
- Shared foundation for all [Stratum](https://github.com/stratum-hq/Stratum) packages — TypeScript types, Zod validation schemas, error classes, utility functions, and constants. Every other Stratum package depends on it.
3
+ Shared foundation for all [Stratum](https://github.com/stratum-hq/Stratum) packages: TypeScript types, Zod validation schemas, error classes, utility functions, and constants. Every other Stratum package depends on it.
4
+
5
+ Read the documentation at [docs.stratum-hq.org/packages/core](https://docs.stratum-hq.org/packages/core/).
4
6
 
5
7
  ## Installation
6
8
 
@@ -27,7 +29,7 @@ import {
27
29
  IsolationStrategy.SHARED_RLS; // "SHARED_RLS"
28
30
  PermissionMode.LOCKED; // "LOCKED"
29
31
 
30
- // Zod schemas — validate untrusted input
32
+ // Zod schemas: validate untrusted input
31
33
  SlugSchema.parse("acme_corp"); // passes
32
34
  SlugSchema.parse("INVALID"); // throws ZodError
33
35
 
@@ -44,12 +46,12 @@ try {
44
46
 
45
47
  ## What's Exported
46
48
 
47
- - **Types** — `TenantNode`, `TenantContext`, `ResolvedConfigEntry`, `ResolvedPermission`, `CreateTenantInput`, `SetConfigInput`, `AuditEntry`, `ConsentRecord`, `Region`, `AbacPolicy`, and more.
48
- - **Enums** — `IsolationStrategy` (`SHARED_RLS`, `SCHEMA_PER_TENANT`, `DB_PER_TENANT`), `PermissionMode` (`LOCKED`, `INHERITED`, `DELEGATED`), `RevocationMode` (`CASCADE`, `SOFT`, `PERMANENT`), `TenantStatus`.
49
- - **Zod schemas** — `SlugSchema`, `UUIDSchema`, `PaginationSchema`, `CreateTenantInputSchema`, `SetConfigInputSchema`, `CreatePermissionInputSchema`, `AuditLogQuerySchema`, and their input types.
50
- - **Ancestry utilities** — `buildAncestryPath`, `parseAncestryPath`, `getDepth`, `isAncestorOf`, `isDescendantOf`, `getAncestorIds`.
51
- - **Errors** — `StratumError` plus `TenantNotFoundError`, `ConfigLockedError`, `PermissionRevocationDeniedError`, `IsolationViolationError`, `UnauthorizedError`, `ForbiddenError`, and others.
52
- - **Constants** — `MAX_SLUG_LENGTH` (63), `DEFAULT_CACHE_TTL_MS`, `DEFAULT_PAGE_SIZE`, `MAX_PAGE_SIZE`, `API_KEY_PREFIX`, `TENANT_HEADER`.
49
+ - **Types**: `TenantNode`, `TenantContext`, `ResolvedConfigEntry`, `ResolvedPermission`, `CreateTenantInput`, `SetConfigInput`, `AuditEntry`, `ConsentRecord`, `Region`, `AbacPolicy`, and more.
50
+ - **Enums**: `IsolationStrategy` (`SHARED_RLS`, `SCHEMA_PER_TENANT`, `DB_PER_TENANT`), `PermissionMode` (`LOCKED`, `INHERITED`, `DELEGATED`), `RevocationMode` (`CASCADE`, `SOFT`, `PERMANENT`), `TenantStatus`.
51
+ - **Zod schemas**: `SlugSchema`, `UUIDSchema`, `PaginationSchema`, `CreateTenantInputSchema`, `SetConfigInputSchema`, `CreatePermissionInputSchema`, `AuditLogQuerySchema`, and their input types.
52
+ - **Ancestry utilities**: `buildAncestryPath`, `parseAncestryPath`, `getDepth`, `isAncestorOf`, `isDescendantOf`, `getAncestorIds`.
53
+ - **Errors**: `StratumError` plus `TenantNotFoundError`, `ConfigLockedError`, `PermissionRevocationDeniedError`, `IsolationViolationError`, `UnauthorizedError`, `ForbiddenError`, and others.
54
+ - **Constants**: `MAX_SLUG_LENGTH` (63), `DEFAULT_CACHE_TTL_MS`, `DEFAULT_PAGE_SIZE`, `MAX_PAGE_SIZE`, `API_KEY_PREFIX`, `TENANT_HEADER`.
53
55
 
54
56
  ## Links
55
57
 
package/dist/index.d.ts CHANGED
@@ -7,11 +7,11 @@ export { TenantEvent, WebhookSchema, CreateWebhookInputSchema, UpdateWebhookInpu
7
7
  export { RegionStatus, RegionSchema, CreateRegionInputSchema, UpdateRegionInputSchema, MigrateRegionInputSchema, type Region, type CreateRegionInput, type UpdateRegionInput, type MigrateRegionInput, } from "./types/region.js";
8
8
  export { IsolationStrategy, TenantStatus, TenantNodeSchema, CreateTenantInputSchema, UpdateTenantInputSchema, MoveTenantInputSchema, type TenantNode, type CreateTenantInput, type UpdateTenantInput, type MoveTenantInput, type TenantContext, type ResolvedTenantContext, type ResolvedPermission, } from "./types/tenant.js";
9
9
  export { PermissionMode, RevocationMode, PermissionPolicySchema, CreatePermissionInputSchema, UpdatePermissionInputSchema, type PermissionPolicy, type CreatePermissionInput, type UpdatePermissionInput, } from "./types/permission.js";
10
- export { ConfigEntrySchema, SetConfigInputSchema, type ConfigEntry, type SetConfigInput, type BatchSetConfigEntry, type ResolvedConfigEntry, type ResolvedConfig, type BatchSetConfigKeyResult, type BatchSetConfigResult, type ConfigDiffEntry, type ConfigDiffItem, type ConfigDiffTenantInfo, type ConfigDiff, type DriftStatus, type DriftDetail, type DriftResult, type BatchDriftResult, } from "./types/config.js";
10
+ export { ConfigEntrySchema, SetConfigInputSchema, type ConfigEntry, type SetConfigInput, type BatchSetConfigEntry, type ResolvedConfigEntry, type ResolveConfigOptions, type ResolvedConfig, type BatchSetConfigKeyResult, type BatchSetConfigResult, type ConfigDiffEntry, type ConfigDiffItem, type ConfigDiffTenantInfo, type ConfigDiff, type DriftStatus, type DriftDetail, type DriftResult, type BatchDriftResult, } from "./types/config.js";
11
11
  export { SUPPORTED_ISOLATION_STRATEGIES, SUPPORTED_ISOLATION_STRATEGIES_V1, isSupportedIsolationStrategy, } from "./types/isolation.js";
12
12
  export { parseAncestryPath, buildAncestryPath, getDepth, isAncestorOf, isDescendantOf, getParentPath, appendToPath, getAncestorIds, getSelfId, } from "./utils/ancestry.js";
13
13
  export { SLUG_REGEX, SlugSchema, UUIDSchema, PaginationSchema, validateSlug, isValidSlug, type PaginationInput, type PaginatedResult, } from "./utils/validation.js";
14
14
  export { CreateAbacPolicyInputSchema, AbacEvaluationRequestSchema, type AbacOperator, type AbacCondition, type AbacPolicy, type CreateAbacPolicyInput, type AbacEvaluationRequest, type AbacEvaluationResult, type ResolvedAbacPolicy, } from "./types/abac.js";
15
- export { ErrorCode, StratumError, TenantNotFoundError, TenantAlreadyExistsError, TenantHasChildrenError, TenantCycleDetectedError, TenantArchivedError, TenantSuspendedError, TenantPendingError, TenantProvisioningError, InvalidTenantStateError, TenantContextNotFoundError, IsolationViolationError, IsolationStrategyUnsupportedError, PermissionLockedError, PermissionNotFoundError, PermissionRevocationDeniedError, ConfigLockedError, ConfigNotFoundError, ValidationError, UnauthorizedError, ForbiddenError, RegionInUseError, RegionNotActiveError, WebhookNotFoundError, WebhookDeliveryError, WebhookUrlValidationError, RegionNotFoundError, AbacPolicyNotFoundError, InvalidAbacOperatorError, AbacPolicyLockedError, } from "./utils/errors.js";
15
+ export { ErrorCode, StratumError, TenantNotFoundError, TenantAlreadyExistsError, TenantHasChildrenError, TenantCycleDetectedError, TenantArchivedError, TenantSuspendedError, TenantPendingError, TenantProvisioningError, InvalidTenantStateError, TenantContextNotFoundError, IsolationViolationError, IsolationStrategyUnsupportedError, PermissionLockedError, PermissionNotFoundError, PermissionRevocationDeniedError, ConfigLockedError, ConfigNotFoundError, ValidationError, UnauthorizedError, ForbiddenError, RegionInUseError, RegionNotActiveError, WebhookNotFoundError, WebhookDeliveryError, WebhookUrlValidationError, RegionNotFoundError, AbacPolicyNotFoundError, InvalidAbacOperatorError, AbacPolicyLockedError, DecryptionError, } from "./utils/errors.js";
16
16
  export { MAX_SLUG_LENGTH, DEFAULT_CACHE_TTL_MS, DEFAULT_PAGE_SIZE, MAX_PAGE_SIZE, API_KEY_PREFIX, API_KEY_BYTES, TENANT_HEADER, } from "./constants.js";
17
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SLUG_REGEX = exports.getSelfId = exports.getAncestorIds = exports.appendToPath = exports.getParentPath = exports.isDescendantOf = exports.isAncestorOf = exports.getDepth = exports.buildAncestryPath = exports.parseAncestryPath = exports.isSupportedIsolationStrategy = exports.SUPPORTED_ISOLATION_STRATEGIES_V1 = exports.SUPPORTED_ISOLATION_STRATEGIES = exports.SetConfigInputSchema = exports.ConfigEntrySchema = exports.UpdatePermissionInputSchema = exports.CreatePermissionInputSchema = exports.PermissionPolicySchema = exports.RevocationMode = exports.PermissionMode = exports.MoveTenantInputSchema = exports.UpdateTenantInputSchema = exports.CreateTenantInputSchema = exports.TenantNodeSchema = exports.TenantStatus = exports.IsolationStrategy = exports.MigrateRegionInputSchema = exports.UpdateRegionInputSchema = exports.CreateRegionInputSchema = exports.RegionSchema = exports.RegionStatus = exports.WebhookDeliverySchema = exports.WebhookDeliveryStatus = exports.WebhookEventSchema = exports.UpdateWebhookInputSchema = exports.CreateWebhookInputSchema = exports.WebhookSchema = exports.TenantEvent = exports.UsageAggregateQuerySchema = exports.UsageEventSchema = exports.RecordUsageInputSchema = exports.RecordAuditEventInputSchema = exports.AuditLogQuerySchema = exports.AuditEntrySchema = exports.scopeSatisfies = exports.ApiKeyScopeSchema = exports.API_KEY_SCOPES = exports.GrantConsentInputSchema = exports.ConsentRecordSchema = exports.ConsentPurpose = void 0;
4
- exports.TENANT_HEADER = exports.API_KEY_BYTES = exports.API_KEY_PREFIX = exports.MAX_PAGE_SIZE = exports.DEFAULT_PAGE_SIZE = exports.DEFAULT_CACHE_TTL_MS = exports.MAX_SLUG_LENGTH = exports.AbacPolicyLockedError = exports.InvalidAbacOperatorError = exports.AbacPolicyNotFoundError = exports.RegionNotFoundError = exports.WebhookUrlValidationError = exports.WebhookDeliveryError = exports.WebhookNotFoundError = exports.RegionNotActiveError = exports.RegionInUseError = exports.ForbiddenError = exports.UnauthorizedError = exports.ValidationError = exports.ConfigNotFoundError = exports.ConfigLockedError = exports.PermissionRevocationDeniedError = exports.PermissionNotFoundError = exports.PermissionLockedError = exports.IsolationStrategyUnsupportedError = exports.IsolationViolationError = exports.TenantContextNotFoundError = exports.InvalidTenantStateError = exports.TenantProvisioningError = exports.TenantPendingError = exports.TenantSuspendedError = exports.TenantArchivedError = exports.TenantCycleDetectedError = exports.TenantHasChildrenError = exports.TenantAlreadyExistsError = exports.TenantNotFoundError = exports.StratumError = exports.ErrorCode = exports.AbacEvaluationRequestSchema = exports.CreateAbacPolicyInputSchema = exports.isValidSlug = exports.validateSlug = exports.PaginationSchema = exports.UUIDSchema = exports.SlugSchema = void 0;
4
+ exports.TENANT_HEADER = exports.API_KEY_BYTES = exports.API_KEY_PREFIX = exports.MAX_PAGE_SIZE = exports.DEFAULT_PAGE_SIZE = exports.DEFAULT_CACHE_TTL_MS = exports.MAX_SLUG_LENGTH = exports.DecryptionError = exports.AbacPolicyLockedError = exports.InvalidAbacOperatorError = exports.AbacPolicyNotFoundError = exports.RegionNotFoundError = exports.WebhookUrlValidationError = exports.WebhookDeliveryError = exports.WebhookNotFoundError = exports.RegionNotActiveError = exports.RegionInUseError = exports.ForbiddenError = exports.UnauthorizedError = exports.ValidationError = exports.ConfigNotFoundError = exports.ConfigLockedError = exports.PermissionRevocationDeniedError = exports.PermissionNotFoundError = exports.PermissionLockedError = exports.IsolationStrategyUnsupportedError = exports.IsolationViolationError = exports.TenantContextNotFoundError = exports.InvalidTenantStateError = exports.TenantProvisioningError = exports.TenantPendingError = exports.TenantSuspendedError = exports.TenantArchivedError = exports.TenantCycleDetectedError = exports.TenantHasChildrenError = exports.TenantAlreadyExistsError = exports.TenantNotFoundError = exports.StratumError = exports.ErrorCode = exports.AbacEvaluationRequestSchema = exports.CreateAbacPolicyInputSchema = exports.isValidSlug = exports.validateSlug = exports.PaginationSchema = exports.UUIDSchema = exports.SlugSchema = void 0;
5
5
  // Consent types
6
6
  var consent_js_1 = require("./types/consent.js");
7
7
  Object.defineProperty(exports, "ConsentPurpose", { enumerable: true, get: function () { return consent_js_1.ConsentPurpose; } });
@@ -115,6 +115,7 @@ Object.defineProperty(exports, "RegionNotFoundError", { enumerable: true, get: f
115
115
  Object.defineProperty(exports, "AbacPolicyNotFoundError", { enumerable: true, get: function () { return errors_js_1.AbacPolicyNotFoundError; } });
116
116
  Object.defineProperty(exports, "InvalidAbacOperatorError", { enumerable: true, get: function () { return errors_js_1.InvalidAbacOperatorError; } });
117
117
  Object.defineProperty(exports, "AbacPolicyLockedError", { enumerable: true, get: function () { return errors_js_1.AbacPolicyLockedError; } });
118
+ Object.defineProperty(exports, "DecryptionError", { enumerable: true, get: function () { return errors_js_1.DecryptionError; } });
118
119
  // Constants
119
120
  var constants_js_1 = require("./constants.js");
120
121
  Object.defineProperty(exports, "MAX_SLUG_LENGTH", { enumerable: true, get: function () { return constants_js_1.MAX_SLUG_LENGTH; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -58,10 +58,33 @@ export type BatchSetConfigEntry = SetConfigInput & {
58
58
  };
59
59
  export interface ResolvedConfigEntry {
60
60
  key: string;
61
+ /** The value, or `null` when `masked` is true. */
61
62
  value: unknown;
62
63
  source_tenant_id: string;
63
64
  inherited: boolean;
64
65
  locked: boolean;
66
+ /** Present and true when the value was set with `sensitive: true`. */
67
+ sensitive?: boolean;
68
+ /**
69
+ * Present and true when a sensitive value inherited from an ancestor was
70
+ * withheld from this read. `value` is then `null`; `source_tenant_id` names
71
+ * the tenant that set it.
72
+ */
73
+ masked?: boolean;
74
+ }
75
+ /** Options for reading a tenant's resolved config. */
76
+ export interface ResolveConfigOptions {
77
+ /**
78
+ * Return sensitive values inherited from ancestors decrypted. By default they
79
+ * come back masked. Only for trusted server-side code that needs the secret
80
+ * itself; do not pass the result back to a client.
81
+ */
82
+ revealSensitive?: boolean;
83
+ /**
84
+ * The tenant the reader acts for. An inherited sensitive value that this
85
+ * tenant set is returned decrypted; any other stays masked.
86
+ */
87
+ viewerTenantId?: string;
65
88
  }
66
89
  export type ResolvedConfig = Record<string, ResolvedConfigEntry>;
67
90
  export interface BatchSetConfigKeyResult {
@@ -70,16 +93,27 @@ export interface BatchSetConfigKeyResult {
70
93
  entry?: ConfigEntry;
71
94
  error?: string;
72
95
  }
96
+ /**
97
+ * The outcome of a batch config write. The batch is atomic: when any entry is
98
+ * locked by an ancestor or invalid, nothing is written, `rolled_back` is true,
99
+ * `succeeded` is 0, and every result has status `"error"`. The entries that
100
+ * caused the rollback carry their own reason; the others say they were not
101
+ * applied because of those keys.
102
+ */
73
103
  export interface BatchSetConfigResult {
74
104
  results: BatchSetConfigKeyResult[];
75
105
  succeeded: number;
76
106
  failed: number;
107
+ /** True when the batch was rolled back and nothing was written. */
108
+ rolled_back?: boolean;
77
109
  }
78
110
  /** Per-key diff entry showing the value and status for one tenant side. */
79
111
  export interface ConfigDiffEntry {
80
112
  value: unknown;
81
113
  status: "inherited" | "own" | "locked";
82
114
  source: string;
115
+ /** Present and true when an inherited sensitive value was withheld (see {@link ResolvedConfigEntry.masked}). */
116
+ masked?: boolean;
83
117
  }
84
118
  /** A single key comparison between two tenants. */
85
119
  export interface ConfigDiffItem {
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAKH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,KAAK,EAAE,OAAO,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAEjE,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,2EAA2E;AAC3E,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,GAAG,KAAK,GAAG,QAAQ,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,gHAAgH;IAChH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,mDAAmD;AACnD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;IACjC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAAC;CAClC;AAED,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,iCAAiC;AACjC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,IAAI,EAAE,cAAc,EAAE,CAAC;CACxB;AAED,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,CAAC;AAErE,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH"}
@@ -3,7 +3,7 @@ import { z } from "zod";
3
3
  * Input to record a single usage event for a tenant.
4
4
  *
5
5
  * `quantity` defaults to 1 (one countable unit) and must be a non-negative
6
- * integer — metering counts up; credits / adjustments are out of scope.
6
+ * integer: metering counts up; credits / adjustments are out of scope.
7
7
  * `occurred_at` is when the usage happened (ISO 8601); it defaults to insert
8
8
  * time and is the timestamp aggregation windows filter on, so a back-dated
9
9
  * import still lands in the right billing window. `idempotency_key`, when
@@ -7,7 +7,7 @@ const timestamptz_js_1 = require("../utils/timestamptz.js");
7
7
  * Input to record a single usage event for a tenant.
8
8
  *
9
9
  * `quantity` defaults to 1 (one countable unit) and must be a non-negative
10
- * integer — metering counts up; credits / adjustments are out of scope.
10
+ * integer: metering counts up; credits / adjustments are out of scope.
11
11
  * `occurred_at` is when the usage happened (ISO 8601); it defaults to insert
12
12
  * time and is the timestamp aggregation windows filter on, so a back-dated
13
13
  * import still lands in the right billing window. `idempotency_key`, when
@@ -50,7 +50,7 @@ export declare function appendToPath(parentPath: string, childId: string): strin
50
50
  */
51
51
  export declare function getAncestorIds(path: string): string[];
52
52
  /**
53
- * Get the last ID in an ancestry path — the tenant's direct parent
53
+ * Get the last ID in an ancestry path: the tenant's direct parent
54
54
  * (ancestry paths exclude self). Returns null for a root tenant ("/").
55
55
  */
56
56
  export declare function getSelfId(path: string): string | null;
@@ -92,7 +92,7 @@ function getAncestorIds(path) {
92
92
  return parseAncestryPath(path);
93
93
  }
94
94
  /**
95
- * Get the last ID in an ancestry path — the tenant's direct parent
95
+ * Get the last ID in an ancestry path: the tenant's direct parent
96
96
  * (ancestry paths exclude self). Returns null for a root tenant ("/").
97
97
  */
98
98
  function getSelfId(path) {
@@ -27,7 +27,8 @@ export declare enum ErrorCode {
27
27
  WEBHOOK_NOT_FOUND = "WEBHOOK_NOT_FOUND",
28
28
  WEBHOOK_DELIVERY_FAILED = "WEBHOOK_DELIVERY_FAILED",
29
29
  WEBHOOK_URL_INVALID = "WEBHOOK_URL_INVALID",
30
- REGION_NOT_FOUND = "REGION_NOT_FOUND"
30
+ REGION_NOT_FOUND = "REGION_NOT_FOUND",
31
+ DECRYPTION_FAILED = "DECRYPTION_FAILED"
31
32
  }
32
33
  export declare class StratumError extends Error {
33
34
  readonly code: ErrorCode;
@@ -49,7 +50,8 @@ export declare class TenantAlreadyExistsError extends StratumError {
49
50
  constructor(slug: string);
50
51
  }
51
52
  export declare class TenantHasChildrenError extends StratumError {
52
- constructor(tenantId: string);
53
+ /** `action` names the blocked transition. */
54
+ constructor(tenantId: string, action?: "archive" | "suspend");
53
55
  }
54
56
  export declare class TenantCycleDetectedError extends StratumError {
55
57
  constructor(tenantId: string, newParentId: string);
@@ -168,4 +170,15 @@ export declare class InvalidAbacOperatorError extends StratumError {
168
170
  export declare class AbacPolicyLockedError extends StratumError {
169
171
  constructor(policyName: string, lockerTenantId: string);
170
172
  }
173
+ /**
174
+ * A stored encrypted value could not be decrypted: it is not in the Stratum
175
+ * ciphertext format, or it fails authentication because it was encrypted
176
+ * under a different key or HKDF salt (or was altered). The message never
177
+ * contains the value. `cause` holds the underlying error.
178
+ */
179
+ export declare class DecryptionError extends StratumError {
180
+ constructor(reason: "format" | "authentication", options?: {
181
+ cause?: unknown;
182
+ });
183
+ }
171
184
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AbacPolicyLockedError = exports.InvalidAbacOperatorError = exports.AbacPolicyNotFoundError = exports.RegionNotFoundError = exports.WebhookUrlValidationError = exports.WebhookDeliveryError = exports.WebhookNotFoundError = exports.RegionNotActiveError = exports.RegionInUseError = exports.ForbiddenError = exports.UnauthorizedError = exports.ValidationError = exports.ConfigNotFoundError = exports.ConfigLockedError = exports.PermissionRevocationDeniedError = exports.PermissionNotFoundError = exports.PermissionLockedError = exports.IsolationStrategyUnsupportedError = exports.IsolationViolationError = exports.TenantContextNotFoundError = exports.InvalidTenantStateError = exports.TenantProvisioningError = exports.TenantPendingError = exports.TenantSuspendedError = exports.TenantArchivedError = exports.TenantCycleDetectedError = exports.TenantHasChildrenError = exports.TenantAlreadyExistsError = exports.TenantNotFoundError = exports.StratumError = exports.ErrorCode = void 0;
3
+ exports.DecryptionError = exports.AbacPolicyLockedError = exports.InvalidAbacOperatorError = exports.AbacPolicyNotFoundError = exports.RegionNotFoundError = exports.WebhookUrlValidationError = exports.WebhookDeliveryError = exports.WebhookNotFoundError = exports.RegionNotActiveError = exports.RegionInUseError = exports.ForbiddenError = exports.UnauthorizedError = exports.ValidationError = exports.ConfigNotFoundError = exports.ConfigLockedError = exports.PermissionRevocationDeniedError = exports.PermissionNotFoundError = exports.PermissionLockedError = exports.IsolationStrategyUnsupportedError = exports.IsolationViolationError = exports.TenantContextNotFoundError = exports.InvalidTenantStateError = exports.TenantProvisioningError = exports.TenantPendingError = exports.TenantSuspendedError = exports.TenantArchivedError = exports.TenantCycleDetectedError = exports.TenantHasChildrenError = exports.TenantAlreadyExistsError = exports.TenantNotFoundError = exports.StratumError = exports.ErrorCode = void 0;
4
4
  var ErrorCode;
5
5
  (function (ErrorCode) {
6
6
  ErrorCode["ABAC_POLICY_NOT_FOUND"] = "ABAC_POLICY_NOT_FOUND";
@@ -32,6 +32,7 @@ var ErrorCode;
32
32
  ErrorCode["WEBHOOK_DELIVERY_FAILED"] = "WEBHOOK_DELIVERY_FAILED";
33
33
  ErrorCode["WEBHOOK_URL_INVALID"] = "WEBHOOK_URL_INVALID";
34
34
  ErrorCode["REGION_NOT_FOUND"] = "REGION_NOT_FOUND";
35
+ ErrorCode["DECRYPTION_FAILED"] = "DECRYPTION_FAILED";
35
36
  })(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
36
37
  class StratumError extends Error {
37
38
  code;
@@ -70,8 +71,11 @@ class TenantAlreadyExistsError extends StratumError {
70
71
  }
71
72
  exports.TenantAlreadyExistsError = TenantAlreadyExistsError;
72
73
  class TenantHasChildrenError extends StratumError {
73
- constructor(tenantId) {
74
- super(ErrorCode.TENANT_HAS_CHILDREN, `Cannot archive tenant ${tenantId}: it has active children. Archive children first.`, 409);
74
+ /** `action` names the blocked transition. */
75
+ constructor(tenantId, action = "archive") {
76
+ super(ErrorCode.TENANT_HAS_CHILDREN, action === "suspend"
77
+ ? `Cannot suspend tenant ${tenantId}: it has active children. Suspend or archive its children first.`
78
+ : `Cannot archive tenant ${tenantId}: it has active children. Archive children first.`, 409);
75
79
  this.name = "TenantHasChildrenError";
76
80
  }
77
81
  }
@@ -298,4 +302,25 @@ class AbacPolicyLockedError extends StratumError {
298
302
  }
299
303
  }
300
304
  exports.AbacPolicyLockedError = AbacPolicyLockedError;
305
+ /**
306
+ * A stored encrypted value could not be decrypted: it is not in the Stratum
307
+ * ciphertext format, or it fails authentication because it was encrypted
308
+ * under a different key or HKDF salt (or was altered). The message never
309
+ * contains the value. `cause` holds the underlying error.
310
+ */
311
+ class DecryptionError extends StratumError {
312
+ constructor(reason, options) {
313
+ super(ErrorCode.DECRYPTION_FAILED, reason === "format"
314
+ ? "Cannot decrypt a stored value: Invalid encrypted value format"
315
+ : "Cannot decrypt a stored value: it was encrypted under a different " +
316
+ "STRATUM_ENCRYPTION_KEY or STRATUM_HKDF_SALT, or it was altered. During a key " +
317
+ "or salt change, set STRATUM_ENCRYPTION_KEY_PREVIOUS and STRATUM_HKDF_SALT_PREVIOUS " +
318
+ "to the earlier values.", 500);
319
+ this.name = "DecryptionError";
320
+ if (options && "cause" in options) {
321
+ Object.defineProperty(this, "cause", { value: options.cause, writable: true, configurable: true });
322
+ }
323
+ }
324
+ }
325
+ exports.DecryptionError = DecryptionError;
301
326
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,15 @@
1
1
  {
2
2
  "name": "@stratum-hq/core",
3
- "version": "1.5.0",
4
- "description": "Stratum shared types, utilities, and validation schemas",
3
+ "version": "1.6.0",
4
+ "description": "Shared types, Zod schemas, and errors for the Stratum multi-tenancy packages",
5
5
  "keywords": [
6
6
  "multi-tenancy",
7
+ "multitenancy",
7
8
  "multi-tenant",
8
9
  "saas",
9
10
  "tenant",
11
+ "tenant-isolation",
12
+ "zod",
10
13
  "typescript",
11
14
  "validation",
12
15
  "schemas",
@@ -45,7 +48,7 @@
45
48
  },
46
49
  "license": "MIT",
47
50
  "author": "Christian Crank",
48
- "homepage": "https://github.com/stratum-hq/Stratum/tree/main/packages/core#readme",
51
+ "homepage": "https://docs.stratum-hq.org/packages/core/",
49
52
  "bugs": "https://github.com/stratum-hq/Stratum/issues",
50
53
  "engines": {
51
54
  "node": ">=20.0.0"