diff --git a/packages/patchlogr-core/src/partition/partition.ts b/packages/patchlogr-core/src/partition/partition.ts index 42b2b03..2fd755b 100644 --- a/packages/patchlogr-core/src/partition/partition.ts +++ b/packages/patchlogr-core/src/partition/partition.ts @@ -1,14 +1,10 @@ -export type PartitionManifest = { - key: string; - hash: string; -}; - export type Partition = { hash: string; operationKey: string; }; export type PartitionedSpec = { + hash: string; metadata: Record; partitions: Map; }; diff --git a/packages/patchlogr-core/src/partition/partitionByMethod.ts b/packages/patchlogr-core/src/partition/partitionByMethod.ts index 67524f6..8804bb0 100644 --- a/packages/patchlogr-core/src/partition/partitionByMethod.ts +++ b/packages/patchlogr-core/src/partition/partitionByMethod.ts @@ -17,6 +17,7 @@ export function partitionByMethod(spec: CanonicalSpec): PartitionedSpec { }); return { + hash: createSHA256Hash(stableStringify(spec)), metadata: { ...spec.info, ...spec.security, diff --git a/packages/patchlogr-core/src/partition/partitionByTag.ts b/packages/patchlogr-core/src/partition/partitionByTag.ts index da5c6b4..f8a9699 100644 --- a/packages/patchlogr-core/src/partition/partitionByTag.ts +++ b/packages/patchlogr-core/src/partition/partitionByTag.ts @@ -19,6 +19,7 @@ export function partitionByTag(spec: CanonicalSpec): PartitionedSpec { }); return { + hash: createSHA256Hash(stableStringify(spec)), metadata: { ...spec.info, ...spec.security, diff --git a/packages/patchlogr-types/src/index.ts b/packages/patchlogr-types/src/index.ts index d277dfb..02c3ac6 100644 --- a/packages/patchlogr-types/src/index.ts +++ b/packages/patchlogr-types/src/index.ts @@ -188,7 +188,7 @@ export type CanonicalOperation = CanonicalOperationContract & { doc?: CanonicalOperationDoc; }; -export interface CanonicalSpec { +export type CanonicalSpec = { info?: { title?: string; version?: string; @@ -202,4 +202,4 @@ export interface CanonicalSpec { */ security?: CanonicalSecurityRequirement[]; operations: Record; -} +};