@cef-ai/cli 2.6.1 → 2.7.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 +52 -1
- package/dist/cli-program.d.ts.map +1 -1
- package/dist/cli-program.js +95 -5
- package/dist/cli-program.js.map +1 -1
- package/dist/commands/cubby.d.ts +2 -0
- package/dist/commands/cubby.d.ts.map +1 -1
- package/dist/commands/cubby.js +1 -0
- package/dist/commands/cubby.js.map +1 -1
- package/dist/commands/external.d.ts +2 -0
- package/dist/commands/external.d.ts.map +1 -1
- package/dist/commands/external.js.map +1 -1
- package/dist/commands/push.d.ts +49 -3
- package/dist/commands/push.d.ts.map +1 -1
- package/dist/commands/push.js +172 -14
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/widget.d.ts +2 -0
- package/dist/commands/widget.d.ts.map +1 -1
- package/dist/commands/widget.js +1 -0
- package/dist/commands/widget.js.map +1 -1
- package/dist/lib/access-token.d.ts +51 -0
- package/dist/lib/access-token.d.ts.map +1 -0
- package/dist/lib/access-token.js +178 -0
- package/dist/lib/access-token.js.map +1 -0
- package/dist/lib/ddc.d.ts +35 -4
- package/dist/lib/ddc.d.ts.map +1 -1
- package/dist/lib/ddc.js +86 -10
- package/dist/lib/ddc.js.map +1 -1
- package/dist/lib/vault-publish.d.ts +106 -0
- package/dist/lib/vault-publish.d.ts.map +1 -0
- package/dist/lib/vault-publish.js +258 -0
- package/dist/lib/vault-publish.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"access-token.js","sourceRoot":"","sources":["../../src/lib/access-token.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/ddc.d.ts
CHANGED
|
@@ -125,11 +125,18 @@ export interface PushAgentVersionInput {
|
|
|
125
125
|
* DDC access token (base58) authorizing writes to the bucket, granted by the
|
|
126
126
|
* bucket owner. Lets a developer who does NOT hold the bucket's secret phrase
|
|
127
127
|
* still push — e.g. a token minted in ROC by the wallet that owns the AS's
|
|
128
|
-
* bucket.
|
|
129
|
-
*
|
|
130
|
-
* `accessToken` must be
|
|
128
|
+
* bucket. A token that names no subject carries the authority on its own; one
|
|
129
|
+
* issued to a key (an invite token, say) also needs that key's phrase in
|
|
130
|
+
* `subjectPhrase`. Exactly one of `secretPhrase` or `accessToken` must be
|
|
131
|
+
* provided.
|
|
131
132
|
*/
|
|
132
133
|
accessToken?: string;
|
|
134
|
+
/**
|
|
135
|
+
* Secret phrase of the key an access token was issued to (its subject).
|
|
136
|
+
* Required when `accessToken` names a subject: the storage node then accepts
|
|
137
|
+
* only requests signed by that key. Ignored for a token with no subject.
|
|
138
|
+
*/
|
|
139
|
+
subjectPhrase?: string;
|
|
133
140
|
/** Network preset. Defaults to MAINNET. Ignored when `endpoint` is set. */
|
|
134
141
|
preset?: DdcPreset;
|
|
135
142
|
/** Explicit blockchain endpoint (overrides `preset`). */
|
|
@@ -177,11 +184,15 @@ export interface DdcModule {
|
|
|
177
184
|
}) => unknown;
|
|
178
185
|
DagNode: new (data: Uint8Array | string | null, links?: LinkLike[]) => unknown;
|
|
179
186
|
Link: new (cid: string, size: number, name?: string) => LinkLike;
|
|
180
|
-
UriSigner: new (uri: string
|
|
187
|
+
UriSigner: new (uri: string, options?: {
|
|
188
|
+
type?: SignerKeyType;
|
|
189
|
+
}) => unknown;
|
|
181
190
|
MAINNET: unknown;
|
|
182
191
|
TESTNET: unknown;
|
|
183
192
|
DEVNET: unknown;
|
|
184
193
|
}
|
|
194
|
+
/** Key types a substrate secret phrase can be derived as. */
|
|
195
|
+
export type SignerKeyType = "sr25519" | "ed25519";
|
|
185
196
|
export interface LinkLike {
|
|
186
197
|
cid: string;
|
|
187
198
|
size: number;
|
|
@@ -205,6 +216,22 @@ interface DdcNetworkInput {
|
|
|
205
216
|
endpoint?: string;
|
|
206
217
|
cdn?: string;
|
|
207
218
|
}
|
|
219
|
+
/**
|
|
220
|
+
* The signer the DDC client is built with.
|
|
221
|
+
*
|
|
222
|
+
* - Secret phrase: the bucket owner signs everything.
|
|
223
|
+
* - Access token with no subject: the throwaway key; the token is sent as-is.
|
|
224
|
+
* - Access token naming a subject: the DDC client wraps the token in a child
|
|
225
|
+
* signed by its own signer, and the storage node requires that signer to be
|
|
226
|
+
* the subject. So the subject's phrase is required, and the key it derives
|
|
227
|
+
* must BE the subject — checked here, before the client is created, because
|
|
228
|
+
* the node's answer to a mismatch is an opaque PERMISSION_DENIED.
|
|
229
|
+
*/
|
|
230
|
+
export declare function createDdcSigner(ddc: DdcModule, input: {
|
|
231
|
+
secretPhrase?: string;
|
|
232
|
+
accessToken?: string;
|
|
233
|
+
subjectPhrase?: string;
|
|
234
|
+
}): Promise<unknown>;
|
|
208
235
|
/**
|
|
209
236
|
* A bucket id, or a readable refusal. Shared so `--bucket abc` cannot die with
|
|
210
237
|
* `SyntaxError: Cannot convert abc to a BigInt` on one path and a proper
|
|
@@ -225,9 +252,11 @@ export declare function parseBucketId(bucket: number | bigint | string): bigint;
|
|
|
225
252
|
export declare function resolveDdcCredential(opts: {
|
|
226
253
|
secretPhrase?: string;
|
|
227
254
|
accessToken?: string;
|
|
255
|
+
subjectPhrase?: string;
|
|
228
256
|
}): {
|
|
229
257
|
secretPhrase?: string;
|
|
230
258
|
accessToken?: string;
|
|
259
|
+
subjectPhrase?: string;
|
|
231
260
|
};
|
|
232
261
|
export declare function pushAgentVersion(input: PushAgentVersionInput): Promise<PushAgentVersionResult>;
|
|
233
262
|
/** What a standalone widget push needs, beyond the network/credential pair. */
|
|
@@ -253,6 +282,7 @@ export interface PushWidgetVersionInput extends DdcNetworkInput {
|
|
|
253
282
|
descriptorBytes: Uint8Array;
|
|
254
283
|
secretPhrase?: string;
|
|
255
284
|
accessToken?: string;
|
|
285
|
+
subjectPhrase?: string;
|
|
256
286
|
ddcModuleImpl?: DdcModule;
|
|
257
287
|
}
|
|
258
288
|
export interface PushWidgetVersionResult {
|
|
@@ -278,6 +308,7 @@ export interface PushCubbyVersionInput extends DdcNetworkInput {
|
|
|
278
308
|
descriptorBytes: Uint8Array;
|
|
279
309
|
secretPhrase?: string;
|
|
280
310
|
accessToken?: string;
|
|
311
|
+
subjectPhrase?: string;
|
|
281
312
|
ddcModuleImpl?: DdcModule;
|
|
282
313
|
}
|
|
283
314
|
export interface PushCubbyVersionResult {
|
package/dist/lib/ddc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ddc.d.ts","sourceRoot":"","sources":["../../src/lib/ddc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;
|
|
1
|
+
{"version":3,"file":"ddc.d.ts","sourceRoot":"","sources":["../../src/lib/ddc.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/ddc.js
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* `{bucketId, cid}` (agent runtime fetches it directly), but the version node
|
|
20
20
|
* makes the whole release browsable and content-addressed as one unit.
|
|
21
21
|
*/
|
|
22
|
+
import { bytesEqual, requiredSubject, ss58Address } from "./access-token.js";
|
|
22
23
|
/** CNS name for the agents directory DAG (analogous to model-cli's "models"). */
|
|
23
24
|
export const CNS_AGENTS_NAME = "agents";
|
|
24
25
|
/**
|
|
@@ -155,11 +156,76 @@ function presetConfig(ddc, input) {
|
|
|
155
156
|
}
|
|
156
157
|
/**
|
|
157
158
|
* Throwaway substrate URI used to construct the DDC client in access-token
|
|
158
|
-
* mode
|
|
159
|
-
*
|
|
160
|
-
*
|
|
159
|
+
* mode when the token names no subject. Such a token is sent to the storage
|
|
160
|
+
* node unchanged, so this key signs nothing that matters. A token that DOES
|
|
161
|
+
* name a subject is never paired with this key — see {@link createDdcSigner}.
|
|
161
162
|
*/
|
|
162
163
|
const ANON_SIGNER_URI = "//cef-push-anon";
|
|
164
|
+
/** How to fix a subject-bound token with no usable signer, shared by both refusals. */
|
|
165
|
+
function subjectBoundRemedy() {
|
|
166
|
+
return "Either pass the secret phrase of that key with --subject-phrase "
|
|
167
|
+
+ "($CEF_DDC_SUBJECT_PHRASE); or, in ROC, open the agent service's Members panel "
|
|
168
|
+
+ "and use \"Copy DDC token for the CLI\", which signs one with that key for you; "
|
|
169
|
+
+ "or ask the bucket owner for an access token that names no subject.";
|
|
170
|
+
}
|
|
171
|
+
function subjectBoundError(subject) {
|
|
172
|
+
return new Error(`[cef] this DDC access token was issued to the key ${ss58Address(subject)}, `
|
|
173
|
+
+ "so the storage node accepts it only on requests signed by that key. "
|
|
174
|
+
+ subjectBoundRemedy());
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* The signer the DDC client is built with.
|
|
178
|
+
*
|
|
179
|
+
* - Secret phrase: the bucket owner signs everything.
|
|
180
|
+
* - Access token with no subject: the throwaway key; the token is sent as-is.
|
|
181
|
+
* - Access token naming a subject: the DDC client wraps the token in a child
|
|
182
|
+
* signed by its own signer, and the storage node requires that signer to be
|
|
183
|
+
* the subject. So the subject's phrase is required, and the key it derives
|
|
184
|
+
* must BE the subject — checked here, before the client is created, because
|
|
185
|
+
* the node's answer to a mismatch is an opaque PERMISSION_DENIED.
|
|
186
|
+
*/
|
|
187
|
+
export async function createDdcSigner(ddc, input) {
|
|
188
|
+
if (input.secretPhrase || !input.accessToken) {
|
|
189
|
+
return new ddc.UriSigner(input.secretPhrase ?? ANON_SIGNER_URI);
|
|
190
|
+
}
|
|
191
|
+
const subject = requiredSubject(input.accessToken);
|
|
192
|
+
if (!subject)
|
|
193
|
+
return new ddc.UriSigner(ANON_SIGNER_URI);
|
|
194
|
+
const phrase = input.subjectPhrase?.trim();
|
|
195
|
+
if (!phrase)
|
|
196
|
+
throw subjectBoundError(subject);
|
|
197
|
+
// A phrase derives a different key per scheme, and a wallet may hold either.
|
|
198
|
+
// A phrase that is not a usable secret at all (wrong word count, bad
|
|
199
|
+
// checksum, garbage text) fails identically under both schemes — `isReady`
|
|
200
|
+
// rejects with whatever the keyring library says ("Invalid mnemonic" and
|
|
201
|
+
// the like), which names no flag and is not a message we hand to a user.
|
|
202
|
+
// Caught per scheme rather than left to escape: the phrase itself is never
|
|
203
|
+
// put in the message, only named by the flag that carried it.
|
|
204
|
+
const derived = [];
|
|
205
|
+
let unusable = 0;
|
|
206
|
+
for (const type of ["sr25519", "ed25519"]) {
|
|
207
|
+
const signer = new ddc.UriSigner(phrase, { type });
|
|
208
|
+
try {
|
|
209
|
+
await signer.isReady?.();
|
|
210
|
+
}
|
|
211
|
+
catch {
|
|
212
|
+
unusable++;
|
|
213
|
+
continue;
|
|
214
|
+
}
|
|
215
|
+
if (signer.publicKey && bytesEqual(signer.publicKey, subject))
|
|
216
|
+
return signer;
|
|
217
|
+
if (signer.publicKey)
|
|
218
|
+
derived.push(`${type} ${ss58Address(signer.publicKey)}`);
|
|
219
|
+
}
|
|
220
|
+
if (derived.length === 0 && unusable > 0) {
|
|
221
|
+
throw new Error("[cef] --subject-phrase ($CEF_DDC_SUBJECT_PHRASE) is not a usable secret phrase — "
|
|
222
|
+
+ "it derived no key under sr25519 or ed25519. Check it was typed or quoted correctly.");
|
|
223
|
+
}
|
|
224
|
+
throw new Error(`[cef] --subject-phrase ($CEF_DDC_SUBJECT_PHRASE) does not belong to the key this `
|
|
225
|
+
+ `DDC access token was issued to (${ss58Address(subject)}); it derives `
|
|
226
|
+
+ `${derived.join(" / ") || "no usable key"}. `
|
|
227
|
+
+ subjectBoundRemedy());
|
|
228
|
+
}
|
|
163
229
|
/** Store raw bytes as a leaf `File` piece → `{cid, size}`. */
|
|
164
230
|
async function storeLeaf(client, ddc, bucketId, bytes, storeOpts) {
|
|
165
231
|
const file = new ddc.File(bytes, { size: bytes.length });
|
|
@@ -257,6 +323,7 @@ export function parseBucketId(bucket) {
|
|
|
257
323
|
export function resolveDdcCredential(opts) {
|
|
258
324
|
const phrase = (opts.secretPhrase ?? process.env.CEF_DDC_SECRET_PHRASE ?? "").trim();
|
|
259
325
|
const token = (opts.accessToken ?? process.env.CEF_DDC_ACCESS_TOKEN ?? "").trim();
|
|
326
|
+
const subjectPhrase = (opts.subjectPhrase ?? process.env.CEF_DDC_SUBJECT_PHRASE ?? "").trim();
|
|
260
327
|
if (phrase && token) {
|
|
261
328
|
throw new Error("[cef push] provide only one of --secret-phrase ($CEF_DDC_SECRET_PHRASE) "
|
|
262
329
|
+ "or --access-token ($CEF_DDC_ACCESS_TOKEN) — both were given, and "
|
|
@@ -267,7 +334,17 @@ export function resolveDdcCredential(opts) {
|
|
|
267
334
|
+ "($CEF_DDC_SECRET_PHRASE), the Sr25519 phrase that owns the bucket, or "
|
|
268
335
|
+ "--access-token ($CEF_DDC_ACCESS_TOKEN), a token granted by that owner.");
|
|
269
336
|
}
|
|
270
|
-
|
|
337
|
+
if (phrase)
|
|
338
|
+
return { secretPhrase: phrase };
|
|
339
|
+
// Refuse a token that cannot be used as given before anything else runs:
|
|
340
|
+
// whether its subject's key was supplied is knowable now, and the storage
|
|
341
|
+
// node would otherwise report it only as PERMISSION_DENIED mid-upload.
|
|
342
|
+
const subject = requiredSubject(token);
|
|
343
|
+
if (!subject)
|
|
344
|
+
return { accessToken: token };
|
|
345
|
+
if (!subjectPhrase)
|
|
346
|
+
throw subjectBoundError(subject);
|
|
347
|
+
return { accessToken: token, subjectPhrase };
|
|
271
348
|
}
|
|
272
349
|
/**
|
|
273
350
|
* Put one version under a bucket registry root, and make sure it stayed there.
|
|
@@ -369,10 +446,9 @@ export async function pushAgentVersion(input) {
|
|
|
369
446
|
const ddc = await loadDdc(input.ddcModuleImpl);
|
|
370
447
|
const { bucketId, agentName, version, bundleBytes, widgets = [] } = input;
|
|
371
448
|
// Authority for the writes comes from either the bucket owner's secret
|
|
372
|
-
// phrase or an access token minted by that owner.
|
|
373
|
-
//
|
|
374
|
-
|
|
375
|
-
const signer = new ddc.UriSigner(input.secretPhrase ?? ANON_SIGNER_URI);
|
|
449
|
+
// phrase or an access token minted by that owner. See createDdcSigner for
|
|
450
|
+
// which key signs in token mode.
|
|
451
|
+
const signer = await createDdcSigner(ddc, input);
|
|
376
452
|
const client = await ddc.DdcClient.create(signer, presetConfig(ddc, input));
|
|
377
453
|
const storeOpts = input.accessToken ? { accessToken: input.accessToken } : undefined;
|
|
378
454
|
try {
|
|
@@ -535,7 +611,7 @@ export async function pushWidgetVersion(input) {
|
|
|
535
611
|
throw new Error(`[cef push] widget "${widgetName}" ships a file called ${WIDGET_DESCRIPTOR_NAME}, `
|
|
536
612
|
+ `which is the name of the descriptor published beside it — rename the file`);
|
|
537
613
|
}
|
|
538
|
-
const signer =
|
|
614
|
+
const signer = await createDdcSigner(ddc, input);
|
|
539
615
|
const client = await ddc.DdcClient.create(signer, presetConfig(ddc, input));
|
|
540
616
|
const storeOpts = input.accessToken ? { accessToken: input.accessToken } : undefined;
|
|
541
617
|
try {
|
|
@@ -577,7 +653,7 @@ export async function pushWidgetVersion(input) {
|
|
|
577
653
|
export async function pushCubbyVersion(input) {
|
|
578
654
|
const ddc = await loadDdc(input.ddcModuleImpl);
|
|
579
655
|
const { bucketId, alias, version } = input;
|
|
580
|
-
const signer =
|
|
656
|
+
const signer = await createDdcSigner(ddc, input);
|
|
581
657
|
const client = await ddc.DdcClient.create(signer, presetConfig(ddc, input));
|
|
582
658
|
const storeOpts = input.accessToken ? { accessToken: input.accessToken } : undefined;
|
|
583
659
|
try {
|
package/dist/lib/ddc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ddc.js","sourceRoot":"","sources":["../../src/lib/ddc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ddc.js","sourceRoot":"","sources":["../../src/lib/ddc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/** One file of the version, named by its path inside the version node. */
|
|
2
|
+
export interface PublishPart {
|
|
3
|
+
name: string;
|
|
4
|
+
bytes: Uint8Array;
|
|
5
|
+
}
|
|
6
|
+
/** The signing surface the preamble needs. Satisfied by the DDC SDK's `UriSigner`. */
|
|
7
|
+
export interface VaultPublishSigner {
|
|
8
|
+
readonly type: string;
|
|
9
|
+
readonly publicKey: Uint8Array;
|
|
10
|
+
sign(data: Uint8Array): Promise<Uint8Array>;
|
|
11
|
+
}
|
|
12
|
+
export type VaultPublishAuth = {
|
|
13
|
+
kind: "bearer";
|
|
14
|
+
token: string;
|
|
15
|
+
} | {
|
|
16
|
+
kind: "signature";
|
|
17
|
+
signer: VaultPublishSigner;
|
|
18
|
+
};
|
|
19
|
+
/** vault-api's 201 body: every CID the publish wrote, and the stamped manifest. */
|
|
20
|
+
export interface VaultPublishResponse {
|
|
21
|
+
vaultId: string;
|
|
22
|
+
scope: string;
|
|
23
|
+
alias: string;
|
|
24
|
+
version: string;
|
|
25
|
+
bucketId: string;
|
|
26
|
+
/** CID of the stored bundle.js — the value a connection pins. */
|
|
27
|
+
bundleCid: string;
|
|
28
|
+
manifestCid: string;
|
|
29
|
+
versionCid: string;
|
|
30
|
+
recordCid: string;
|
|
31
|
+
directoryCid: string;
|
|
32
|
+
widgetsCid?: string;
|
|
33
|
+
widgets: Array<{
|
|
34
|
+
id: string;
|
|
35
|
+
dirCid: string;
|
|
36
|
+
fileCount: number;
|
|
37
|
+
}>;
|
|
38
|
+
/** The manifest exactly as stored, `bundle` and widget `dag`s stamped. */
|
|
39
|
+
manifest: Record<string, unknown>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* A refused or failed publish, with the server's stable code kept for callers
|
|
43
|
+
* that branch on it. `retryable` is true when the same request may simply be
|
|
44
|
+
* sent again.
|
|
45
|
+
*
|
|
46
|
+
* That is not always "nothing was written". A `NETWORK` failure can happen
|
|
47
|
+
* after vault-api received the whole body, so the publish may have committed.
|
|
48
|
+
* Re-pushing the same version is still safe: vault-api does not refuse a
|
|
49
|
+
* version it already holds, it rewrites that version's link and `latest`, and
|
|
50
|
+
* the stored pieces are content-addressed, so identical content lands on the
|
|
51
|
+
* same ids. The one visible effect is that `latest` points at this version
|
|
52
|
+
* again if a newer one was published in between.
|
|
53
|
+
*/
|
|
54
|
+
export declare class VaultPublishError extends Error {
|
|
55
|
+
readonly status: number;
|
|
56
|
+
readonly code: string;
|
|
57
|
+
readonly retryable: boolean;
|
|
58
|
+
constructor(message: string, status: number, code: string, retryable: boolean);
|
|
59
|
+
}
|
|
60
|
+
export interface PublishToVaultInput {
|
|
61
|
+
/** vault-api base URL; a path prefix on it is kept. */
|
|
62
|
+
vaultApi: string;
|
|
63
|
+
vaultId: string;
|
|
64
|
+
scope: string;
|
|
65
|
+
alias: string;
|
|
66
|
+
parts: PublishPart[];
|
|
67
|
+
auth: VaultPublishAuth;
|
|
68
|
+
/** Test seam — defaults to the global `fetch`. */
|
|
69
|
+
fetchImpl?: typeof fetch;
|
|
70
|
+
/** Test seam — the preamble timestamp. */
|
|
71
|
+
now?: () => Date;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Serialise parts as one multipart/form-data body.
|
|
75
|
+
*
|
|
76
|
+
* Built by hand into a single buffer rather than through `FormData` because
|
|
77
|
+
* the signature must commit to the SHA-256 of the exact bytes on the wire, and
|
|
78
|
+
* `FormData`'s encoding (boundary, part headers) is only known once fetch has
|
|
79
|
+
* produced it.
|
|
80
|
+
*/
|
|
81
|
+
export declare function buildMultipartBody(parts: PublishPart[]): {
|
|
82
|
+
body: Uint8Array;
|
|
83
|
+
contentType: string;
|
|
84
|
+
};
|
|
85
|
+
/** Hex SHA-256 of the body — the value the signed preamble commits to. */
|
|
86
|
+
export declare function bodySha256(body: Uint8Array): string;
|
|
87
|
+
/** The route's URL, each path segment escaped the way it is signed. */
|
|
88
|
+
export declare function publishUrl(vaultApi: string, vaultId: string, scope: string, alias: string): URL;
|
|
89
|
+
/**
|
|
90
|
+
* The wallet-signature headers for a publish. The preamble binds the method,
|
|
91
|
+
* the path and query exactly as sent, a timestamp inside vault-api's skew
|
|
92
|
+
* window, and the body's hash; the signature covers the preamble's raw JSON
|
|
93
|
+
* bytes, which travel base64url-encoded beside it.
|
|
94
|
+
*/
|
|
95
|
+
export declare function signatureHeaders(signer: VaultPublishSigner, url: URL, contentSha256: string, now: Date): Promise<Record<string, string>>;
|
|
96
|
+
/** POST the version to vault-api; the parsed 201 body, or a readable refusal. */
|
|
97
|
+
export declare function publishToVault(input: PublishToVaultInput): Promise<VaultPublishResponse>;
|
|
98
|
+
/**
|
|
99
|
+
* A signer from a substrate secret phrase or URI, through the DDC SDK's
|
|
100
|
+
* `UriSigner` — the same optional dependency the direct push already loads,
|
|
101
|
+
* so this path adds no package. It signs the raw preamble bytes, which is the
|
|
102
|
+
* first form vault-api verifies. The key is always derived as ed25519, the
|
|
103
|
+
* only scheme vault-api's wallet auth accepts.
|
|
104
|
+
*/
|
|
105
|
+
export declare function signerFromPhrase(phrase: string): Promise<VaultPublishSigner>;
|
|
106
|
+
//# sourceMappingURL=vault-publish.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vault-publish.d.ts","sourceRoot":"","sources":["../../src/lib/vault-publish.ts"],"names":[],"mappings":"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"}
|