@clef-sh/core 0.1.27 → 0.2.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.
Files changed (80) hide show
  1. package/README.md +1 -2
  2. package/dist/artifact/packer.d.ts +4 -3
  3. package/dist/artifact/packer.d.ts.map +1 -1
  4. package/dist/artifact/resolve.d.ts +3 -2
  5. package/dist/artifact/resolve.d.ts.map +1 -1
  6. package/dist/compliance/run.d.ts.map +1 -1
  7. package/dist/diff/engine.d.ts +18 -8
  8. package/dist/diff/engine.d.ts.map +1 -1
  9. package/dist/import/index.d.ts +5 -5
  10. package/dist/import/index.d.ts.map +1 -1
  11. package/dist/index.d.mts +14 -12
  12. package/dist/index.d.ts +14 -12
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1225 -872
  15. package/dist/index.js.map +4 -4
  16. package/dist/index.mjs +1213 -848
  17. package/dist/index.mjs.map +4 -4
  18. package/dist/kms/aws-arn.d.ts +29 -0
  19. package/dist/kms/aws-arn.d.ts.map +1 -0
  20. package/dist/kms/index.d.ts +2 -0
  21. package/dist/kms/index.d.ts.map +1 -1
  22. package/dist/lint/runner.d.ts +7 -7
  23. package/dist/lint/runner.d.ts.map +1 -1
  24. package/dist/manifest/io.d.ts +6 -0
  25. package/dist/manifest/io.d.ts.map +1 -1
  26. package/dist/manifest/parser.d.ts.map +1 -1
  27. package/dist/matrix/manager.d.ts +4 -16
  28. package/dist/matrix/manager.d.ts.map +1 -1
  29. package/dist/merge/driver.d.ts +2 -2
  30. package/dist/merge/driver.d.ts.map +1 -1
  31. package/dist/merge/metadata-driver.d.ts +5 -4
  32. package/dist/merge/metadata-driver.d.ts.map +1 -1
  33. package/dist/migration/backend.d.ts +10 -7
  34. package/dist/migration/backend.d.ts.map +1 -1
  35. package/dist/pack/backends/json-envelope.d.ts.map +1 -1
  36. package/dist/pack/types.d.ts +9 -3
  37. package/dist/pack/types.d.ts.map +1 -1
  38. package/dist/pending/metadata.d.ts +1 -3
  39. package/dist/pending/metadata.d.ts.map +1 -1
  40. package/dist/recipients/index.d.ts +4 -3
  41. package/dist/recipients/index.d.ts.map +1 -1
  42. package/dist/report/generator.d.ts +4 -3
  43. package/dist/report/generator.d.ts.map +1 -1
  44. package/dist/reset/manager.d.ts +21 -3
  45. package/dist/reset/manager.d.ts.map +1 -1
  46. package/dist/service-identity/manager.d.ts +6 -3
  47. package/dist/service-identity/manager.d.ts.map +1 -1
  48. package/dist/sops/client.d.ts +80 -55
  49. package/dist/sops/client.d.ts.map +1 -1
  50. package/dist/sops/linux-stdin-fifo.d.ts +31 -0
  51. package/dist/sops/linux-stdin-fifo.d.ts.map +1 -0
  52. package/dist/source/compose.d.ts +10 -0
  53. package/dist/source/compose.d.ts.map +1 -0
  54. package/dist/source/default-bulk.d.ts +12 -0
  55. package/dist/source/default-bulk.d.ts.map +1 -0
  56. package/dist/source/encryption-backend.d.ts +85 -0
  57. package/dist/source/encryption-backend.d.ts.map +1 -0
  58. package/dist/source/errors.d.ts +19 -0
  59. package/dist/source/errors.d.ts.map +1 -0
  60. package/dist/source/filesystem-storage-backend.d.ts +26 -0
  61. package/dist/source/filesystem-storage-backend.d.ts.map +1 -0
  62. package/dist/source/guards.d.ts +14 -0
  63. package/dist/source/guards.d.ts.map +1 -0
  64. package/dist/source/index.d.ts +10 -0
  65. package/dist/source/index.d.ts.map +1 -0
  66. package/dist/source/mock-source.d.ts +89 -0
  67. package/dist/source/mock-source.d.ts.map +1 -0
  68. package/dist/source/storage-backend.d.ts +61 -0
  69. package/dist/source/storage-backend.d.ts.map +1 -0
  70. package/dist/source/types.d.ts +212 -0
  71. package/dist/source/types.d.ts.map +1 -0
  72. package/dist/structure/manager.d.ts +17 -3
  73. package/dist/structure/manager.d.ts.map +1 -1
  74. package/dist/sync/manager.d.ts +7 -6
  75. package/dist/sync/manager.d.ts.map +1 -1
  76. package/dist/types/index.d.ts +10 -23
  77. package/dist/types/index.d.ts.map +1 -1
  78. package/package.json +3 -3
  79. package/dist/bulk/ops.d.ts +0 -57
  80. package/dist/bulk/ops.d.ts.map +0 -1
@@ -0,0 +1,212 @@
1
+ /**
2
+ * `SecretSource` is the high-level cell-storage seam consumed by every
3
+ * non-source-specific consumer (CLI commands, UI server, pack backends).
4
+ * Methods take and return plaintext at this boundary; encryption is a
5
+ * lower-layer concern that does not appear in this contract.
6
+ *
7
+ * Architecture (introduced in Phase 2):
8
+ *
9
+ * ┌─────────────────────────────────────────────────────┐
10
+ * │ SecretSource plaintext cells, what consumers see │
11
+ * ├─────────────────────────────────────────────────────┤
12
+ * │ SopsClient uniform encryption (KMS/age via │
13
+ * │ the SOPS subprocess) │
14
+ * ├─────────────────────────────────────────────────────┤
15
+ * │ BlobStore opaque ciphertext bytes by CellRef │
16
+ * └─────────────────────────────────────────────────────┘
17
+ *
18
+ * The bundled `GitSopsSource` is composed from `FilesystemBlobStore +
19
+ * SopsClient + manifest`. A future third-party source plugs in by
20
+ * implementing `BlobStore` (a small, encryption-free interface) — the
21
+ * encryption layer is provided uniformly by clef. Plugin authors do
22
+ * not implement encryption primitives.
23
+ *
24
+ * The optional capability traits (`Lintable`, `Rotatable`, etc.)
25
+ * declare functionality some sources can offer and others cannot.
26
+ * SOPS-backed traits (lint/rotate/recipients/migrate) are uniform
27
+ * across every source because they live at the SopsClient layer.
28
+ * Substrate-shaped traits (`MergeAware`, `Structural`) are decided by
29
+ * the BlobStore. Consumers use the type guards in `./guards` for
30
+ * runtime detection; CLI commands and UI routes that require an
31
+ * unsupported capability fail fast with
32
+ * `SourceCapabilityUnsupportedError` (see `./errors`).
33
+ */
34
+ import type { ClefManifest, SopsMetadata } from "../types";
35
+ import type { Recipient, RecipientsResult } from "../recipients";
36
+ import type { MigrationOptions, MigrationResult, MigrationTarget } from "../migration/backend";
37
+ import type { MergeResult } from "../merge/driver";
38
+ import type { CellMetadata as PendingCellMetadata } from "../pending/metadata";
39
+ import type { AddNamespaceOptions, AddEnvironmentOptions } from "../structure/manager";
40
+ import type { RotateOptions } from "./encryption-backend";
41
+ export type { RotateOptions };
42
+ /** Identifies a cell in the namespace × environment matrix. */
43
+ export interface CellRef {
44
+ namespace: string;
45
+ environment: string;
46
+ }
47
+ /** Result of decrypting / loading a cell's contents. */
48
+ export interface CellData {
49
+ values: Record<string, string>;
50
+ /**
51
+ * Source-reported metadata. For `git-sops` this carries the SOPS
52
+ * envelope fields (recipients, lastModified, backend, version).
53
+ * Sources with no native equivalent populate sensible defaults.
54
+ */
55
+ metadata: SopsMetadata;
56
+ }
57
+ /**
58
+ * Pending and rotation metadata for a cell. Mirrors the existing
59
+ * `.clef-meta.yaml` data model so the only thing that changes is *where*
60
+ * the metadata lives — file sidecar (git-sops) vs. database row
61
+ * (postgres) etc.
62
+ */
63
+ export type CellPendingMetadata = PendingCellMetadata;
64
+ /**
65
+ * Boolean capability descriptor returned by `describeCapabilities` and
66
+ * surfaced to UI clients via `GET /api/capabilities`. Field names match
67
+ * the trait identifier so adding a new trait means adding one boolean.
68
+ */
69
+ export interface SourceCapabilities {
70
+ lint: boolean;
71
+ rotate: boolean;
72
+ recipients: boolean;
73
+ merge: boolean;
74
+ migrate: boolean;
75
+ bulk: boolean;
76
+ structural: boolean;
77
+ }
78
+ /**
79
+ * Core contract every source must implement. Operations are cell-level
80
+ * — callers never need to know about file paths, table names, or any
81
+ * other substrate detail.
82
+ *
83
+ * Methods throw `ClefError` (or one of its subclasses such as
84
+ * `SopsDecryptionError` / `SopsKeyNotFoundError`) on failure. Sources
85
+ * are expected to translate substrate-specific errors into the Clef
86
+ * hierarchy so CLI/UI consumers can render uniform error messages.
87
+ */
88
+ export interface SecretSource {
89
+ /** Stable source identifier (e.g. `"git-sops"`, `"postgres"`). */
90
+ readonly id: string;
91
+ /** Short human-readable description, used in `clef doctor` output. */
92
+ readonly description: string;
93
+ /** Decrypt / load the cell's values and metadata. */
94
+ readCell(cell: CellRef): Promise<CellData>;
95
+ /**
96
+ * Replace the cell's values atomically. Implementations must ensure
97
+ * a failure mid-write does not leave partial values visible.
98
+ */
99
+ writeCell(cell: CellRef, values: Record<string, string>): Promise<void>;
100
+ /** Remove the cell entirely (or its scaffolded equivalent). */
101
+ deleteCell(cell: CellRef): Promise<void>;
102
+ /** Whether the cell currently has stored data. */
103
+ cellExists(cell: CellRef): Promise<boolean>;
104
+ /**
105
+ * List the keys present in the cell. Sources that can answer this
106
+ * without decrypting (git-sops reads `data.*` keys from the SOPS
107
+ * file) should do so for performance; otherwise a default
108
+ * implementation can decrypt and return `Object.keys`.
109
+ */
110
+ listKeys(cell: CellRef): Promise<string[]>;
111
+ /** Read source-reported metadata without loading values. */
112
+ getCellMetadata(cell: CellRef): Promise<SopsMetadata>;
113
+ /**
114
+ * Create a new (or empty) cell consistent with the manifest's
115
+ * declared recipients/backend for this environment. Idempotent.
116
+ */
117
+ scaffoldCell(cell: CellRef, manifest: ClefManifest): Promise<void>;
118
+ /** Pending + rotation metadata. */
119
+ getPendingMetadata(cell: CellRef): Promise<CellPendingMetadata>;
120
+ markPending(cell: CellRef, keys: string[], setBy: string): Promise<void>;
121
+ markResolved(cell: CellRef, keys: string[]): Promise<void>;
122
+ recordRotation(cell: CellRef, keys: string[], rotatedBy: string): Promise<void>;
123
+ removeRotation(cell: CellRef, keys: string[]): Promise<void>;
124
+ }
125
+ /**
126
+ * Source-specific lint checks. Portable matrix-completeness lint runs
127
+ * over every source via the core interface and is *not* part of this
128
+ * trait — only checks that depend on the substrate (e.g. SOPS envelope
129
+ * integrity, recipient drift) live here.
130
+ */
131
+ export interface Lintable {
132
+ /** Whether the cell has valid encryption envelope metadata. */
133
+ validateEncryption(cell: CellRef): Promise<boolean>;
134
+ /** Compare the cell's actual recipients against the expected set. */
135
+ checkRecipientDrift(cell: CellRef, expected: string[]): Promise<RecipientDriftResult>;
136
+ }
137
+ /** Result of `Lintable.checkRecipientDrift`. */
138
+ export interface RecipientDriftResult {
139
+ /** Recipients expected by the manifest but absent from the cell. */
140
+ missing: string[];
141
+ /** Recipients present on the cell but not in the manifest. */
142
+ unexpected: string[];
143
+ }
144
+ /**
145
+ * Re-key a cell: rotate the data encryption key and/or update the
146
+ * recipient set without exposing plaintext to the calling process. The
147
+ * `RotateOptions` shape mirrors the substrate-level `EncryptionBackend`
148
+ * — at the SOPS layer that means add/remove for any of age, AWS KMS,
149
+ * GCP KMS, Azure KV, PGP. Backends interpret only the keys they
150
+ * understand.
151
+ */
152
+ export interface Rotatable {
153
+ rotate(cell: CellRef, opts: RotateOptions): Promise<void>;
154
+ }
155
+ /**
156
+ * Manifest-level recipient management. `add` and `remove` mutate both
157
+ * the manifest declaration and re-encrypt every affected cell — the
158
+ * trait bundles these because list/add/remove are useless apart.
159
+ */
160
+ export interface RecipientManaged {
161
+ listRecipients(manifest: ClefManifest, environment?: string): Promise<Recipient[]>;
162
+ addRecipient(req: AddRecipientRequest): Promise<RecipientsResult>;
163
+ removeRecipient(req: RemoveRecipientRequest): Promise<RecipientsResult>;
164
+ }
165
+ export interface AddRecipientRequest {
166
+ key: string;
167
+ label?: string;
168
+ environment?: string;
169
+ manifest: ClefManifest;
170
+ }
171
+ export interface RemoveRecipientRequest {
172
+ key: string;
173
+ environment?: string;
174
+ manifest: ClefManifest;
175
+ }
176
+ /** Three-way merge + git driver/hook installation. */
177
+ export interface MergeAware {
178
+ mergeCells(base: CellRef, ours: CellRef, theirs: CellRef): Promise<MergeResult>;
179
+ installMergeDriver(repoRoot: string): Promise<void>;
180
+ uninstallMergeDriver(repoRoot: string): Promise<void>;
181
+ installHooks(repoRoot: string): Promise<void>;
182
+ uninstallHooks(repoRoot: string): Promise<void>;
183
+ }
184
+ /** Re-encrypt every cell to a new SOPS backend (e.g. age → awskms). */
185
+ export interface Migratable {
186
+ migrateBackend(target: MigrationTarget, opts: MigrationOptions): Promise<MigrationResult>;
187
+ }
188
+ /**
189
+ * Batch operations across the matrix. Sources that can do these in a
190
+ * single round-trip (e.g. one SQL transaction) should implement the
191
+ * trait directly; otherwise consumers wrap a `SecretSource` in
192
+ * `defaultBulk` for a correct-but-slow looped fallback.
193
+ */
194
+ export interface Bulk {
195
+ bulkSet(namespace: string, key: string, valuesByEnv: Record<string, string>, manifest: ClefManifest): Promise<void>;
196
+ bulkDelete(namespace: string, key: string, manifest: ClefManifest): Promise<void>;
197
+ copyValue(key: string, from: CellRef, to: CellRef, manifest: ClefManifest): Promise<void>;
198
+ }
199
+ /**
200
+ * Namespace + environment CRUD. On a file-based source this cascades
201
+ * to file/folder renames; on a DB source it's a metadata table update.
202
+ */
203
+ export interface Structural {
204
+ addNamespace(name: string, opts: AddNamespaceOptions, manifest: ClefManifest): Promise<void>;
205
+ removeNamespace(name: string, manifest: ClefManifest): Promise<void>;
206
+ renameNamespace(from: string, to: string, manifest: ClefManifest): Promise<void>;
207
+ addEnvironment(name: string, opts: AddEnvironmentOptions, manifest: ClefManifest): Promise<void>;
208
+ removeEnvironment(name: string, manifest: ClefManifest): Promise<void>;
209
+ renameEnvironment(from: string, to: string, manifest: ClefManifest): Promise<void>;
210
+ }
211
+ export type { AddNamespaceOptions, AddEnvironmentOptions };
212
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/source/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { ClefManifest, EncryptionBackend } from "../types";
1
+ import { ClefManifest } from "../types";
2
+ import type { SecretSource } from "../source/types";
2
3
  import { MatrixManager } from "../matrix/manager";
3
4
  import { TransactionManager } from "../tx";
4
5
  export interface NamespaceEditOptions {
@@ -49,9 +50,22 @@ export interface AddEnvironmentOptions {
49
50
  */
50
51
  export declare class StructureManager {
51
52
  private readonly matrixManager;
52
- private readonly encryption;
53
+ /**
54
+ * Factory rather than a single source instance because adding a
55
+ * namespace or environment can extend the manifest, and the scaffold
56
+ * pass needs to write cells under the post-mutation manifest. Same
57
+ * pattern as ResetManager and BackendMigrator.
58
+ */
59
+ private readonly buildSource;
53
60
  private readonly tx;
54
- constructor(matrixManager: MatrixManager, encryption: EncryptionBackend, tx: TransactionManager);
61
+ constructor(matrixManager: MatrixManager,
62
+ /**
63
+ * Factory rather than a single source instance because adding a
64
+ * namespace or environment can extend the manifest, and the scaffold
65
+ * pass needs to write cells under the post-mutation manifest. Same
66
+ * pattern as ResetManager and BackendMigrator.
67
+ */
68
+ buildSource: (manifest: ClefManifest) => SecretSource, tx: TransactionManager);
55
69
  /**
56
70
  * Add a new namespace to the manifest and scaffold an empty encrypted cell
57
71
  * for every existing environment. Refuses if the name already exists, the
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/structure/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/structure/manager.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { ClefManifest, EncryptionBackend } from "../types";
1
+ import { ClefManifest } from "../types";
2
+ import type { SecretSource } from "../source/types";
2
3
  import { MatrixManager } from "../matrix/manager";
3
4
  import { TransactionManager } from "../tx";
4
5
  export interface SyncOptions {
@@ -33,15 +34,15 @@ export interface SyncResult {
33
34
  * are missing. Each new key gets a cryptographically random placeholder
34
35
  * and is marked pending so the user knows to replace it before deploying.
35
36
  *
36
- * Detection reads plaintext key names from SOPS YAML — no decryption
37
- * needed for the discovery pass. Mutation decrypts, merges, re-encrypts,
38
- * and marks pending inside a single {@link TransactionManager} commit.
37
+ * Detection reads plaintext key names via the source — no decryption
38
+ * needed for the discovery pass. Mutation reads, merges, writes, and
39
+ * marks pending inside a single {@link TransactionManager} commit.
39
40
  */
40
41
  export declare class SyncManager {
41
42
  private readonly matrixManager;
42
- private readonly encryption;
43
+ private readonly source;
43
44
  private readonly tx;
44
- constructor(matrixManager: MatrixManager, encryption: EncryptionBackend, tx: TransactionManager);
45
+ constructor(matrixManager: MatrixManager, source: SecretSource, tx: TransactionManager);
45
46
  /**
46
47
  * Compute what sync would do without mutating anything.
47
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/sync/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAI3C,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAFF,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,iBAAiB,EAC7B,EAAE,EAAE,kBAAkB;IAGzC;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IA6D1F;;;;;;OAMG;IACG,IAAI,CACR,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,UAAU,CAAC;CAkDvB"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/sync/manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAG3C,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAFF,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,kBAAkB;IAGzC;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAkE1F;;;;;;OAMG;IACG,IAAI,CACR,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,UAAU,CAAC;CA8CvB"}
@@ -255,6 +255,16 @@ export interface DecryptedFile {
255
255
  values: Record<string, string>;
256
256
  metadata: SopsMetadata;
257
257
  }
258
+ /**
259
+ * Narrow surface the merge driver needs: decrypt-by-path. Git invokes the
260
+ * driver with three temp filesystem paths that don't map onto a clef
261
+ * `CellRef` (especially `base` and `theirs`, which live in `.git/`), so a
262
+ * path-shaped seam stays alive here even though the rest of the codebase
263
+ * has moved to `SecretSource`. Implemented by `SopsClient`.
264
+ */
265
+ export interface MergeDecrypter {
266
+ decryptFile(filePath: string): Promise<DecryptedFile>;
267
+ }
258
268
  /** SOPS metadata extracted from an encrypted file without decrypting its values. */
259
269
  export interface SopsMetadata {
260
270
  backend: BackendType;
@@ -281,29 +291,6 @@ export interface SopsMetadata {
281
291
  /** SOPS format version string from the file's `sops.version` field (e.g. `"3.12.2"`). */
282
292
  version?: string;
283
293
  }
284
- /**
285
- * Backend-agnostic interface for all encryption/decryption operations.
286
- *
287
- * `SopsClient` is the canonical implementation. Consumers should depend on this
288
- * interface rather than the concrete class so the encryption backend can be
289
- * replaced without touching call sites.
290
- */
291
- export interface EncryptionBackend {
292
- /** Decrypt a file and return its values and metadata. */
293
- decrypt(filePath: string): Promise<DecryptedFile>;
294
- /** Encrypt a key/value map and write it to a file. */
295
- encrypt(filePath: string, values: Record<string, string>, manifest: ClefManifest, environment?: string): Promise<void>;
296
- /** Rotate encryption by adding a new recipient key. */
297
- reEncrypt(filePath: string, newKey: string): Promise<void>;
298
- /** Add an age recipient to an encrypted file (rotate + add-age). */
299
- addRecipient(filePath: string, key: string): Promise<void>;
300
- /** Remove an age recipient from an encrypted file (rotate + rm-age). */
301
- removeRecipient(filePath: string, key: string): Promise<void>;
302
- /** Check whether a file has valid encryption metadata. */
303
- validateEncryption(filePath: string): Promise<boolean>;
304
- /** Extract encryption metadata without decrypting. */
305
- getMetadata(filePath: string): Promise<SopsMetadata>;
306
- }
307
294
  /** Options for `ConsumptionClient.prepareEnvironment`. */
308
295
  export interface ExecOptions {
309
296
  /** Inject only these keys (if set, all other keys are excluded). */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clef-sh/core",
3
- "version": "0.1.27",
3
+ "version": "0.2.0",
4
4
  "description": "Core library for Clef — git-native secrets management",
5
5
  "repository": {
6
6
  "type": "git",
@@ -38,12 +38,12 @@
38
38
  "yaml": "^2.8.3"
39
39
  },
40
40
  "devDependencies": {
41
- "@types/jest": "^29.5.0",
41
+ "@types/jest": "^30.0.0",
42
42
  "@types/node": "^20.19.39",
43
43
  "@types/proper-lockfile": "^4.1.4",
44
44
  "@types/write-file-atomic": "^4.0.3",
45
45
  "esbuild": "^0.28.0",
46
- "jest": "^29.7.0",
46
+ "jest": "^30.0.0",
47
47
  "ts-jest": "^29.4.9",
48
48
  "typescript": "^5.4.0"
49
49
  },
@@ -1,57 +0,0 @@
1
- import { ClefManifest, MatrixCell } from "../types";
2
- import { EncryptionBackend } from "../types";
3
- import { TransactionManager } from "../tx";
4
- /**
5
- * Performs bulk set, delete, and copy operations across multiple environments.
6
- *
7
- * Each public method wraps its work in a single TransactionManager commit so
8
- * any cell-write failure rolls back ALL writes via `git reset --hard`. The
9
- * previous "collect errors and continue" behavior is gone — bulk ops are now
10
- * all-or-nothing.
11
- *
12
- * @example
13
- * ```ts
14
- * const tx = new TransactionManager(new GitIntegration(runner));
15
- * const bulk = new BulkOps(tx);
16
- * await bulk.setAcrossEnvironments("app", "DATABASE_URL", { staging: "...", production: "..." }, manifest, sopsClient, repoRoot);
17
- * ```
18
- */
19
- export declare class BulkOps {
20
- private readonly tx;
21
- constructor(tx: TransactionManager);
22
- /**
23
- * Set a key to different values in multiple environments at once.
24
- *
25
- * @param namespace - Target namespace.
26
- * @param key - Secret key name to set.
27
- * @param values - Map of `{ environment: value }` pairs.
28
- * @param manifest - Parsed manifest.
29
- * @param sopsClient - SOPS client used to decrypt and re-encrypt each file.
30
- * @param repoRoot - Absolute path to the repository root.
31
- * @throws Whatever the underlying encrypt throws — the transaction rolls back.
32
- */
33
- setAcrossEnvironments(namespace: string, key: string, values: Record<string, string>, manifest: ClefManifest, sopsClient: EncryptionBackend, repoRoot: string): Promise<void>;
34
- /**
35
- * Delete a key from every environment in a namespace.
36
- *
37
- * @param namespace - Target namespace.
38
- * @param key - Secret key name to delete.
39
- * @param manifest - Parsed manifest.
40
- * @param sopsClient - SOPS client.
41
- * @param repoRoot - Absolute path to the repository root.
42
- */
43
- deleteAcrossEnvironments(namespace: string, key: string, manifest: ClefManifest, sopsClient: EncryptionBackend, repoRoot: string): Promise<void>;
44
- /**
45
- * Copy a single key's value from one matrix cell to another.
46
- *
47
- * @param key - Secret key name to copy.
48
- * @param fromCell - Source matrix cell.
49
- * @param toCell - Destination matrix cell.
50
- * @param sopsClient - SOPS client.
51
- * @param manifest - Parsed manifest.
52
- * @param repoRoot - Absolute path to the repository root.
53
- * @throws `Error` if the key does not exist in the source cell.
54
- */
55
- copyValue(key: string, fromCell: MatrixCell, toCell: MatrixCell, sopsClient: EncryptionBackend, manifest: ClefManifest, repoRoot: string): Promise<void>;
56
- }
57
- //# sourceMappingURL=ops.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/bulk/ops.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,OAAO;IACN,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,kBAAkB;IAEnD;;;;;;;;;;OAUG;IACG,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IA4BhB;;;;;;;;OAQG;IACG,wBAAwB,CAC5B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAwBhB;;;;;;;;;;OAUG;IACG,SAAS,CACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,iBAAiB,EAC7B,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;CAmBjB"}