@run402/sdk 4.61.0 → 4.62.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/core-dist/config.js +12 -3
- package/core-dist/profiles.js +5 -1
- package/core-dist/redact.d.ts +44 -0
- package/core-dist/redact.js +64 -0
- package/dist/namespaces/gitvault.d.ts +30 -3
- package/dist/namespaces/gitvault.d.ts.map +1 -1
- package/dist/namespaces/gitvault.js +99 -10
- package/dist/namespaces/gitvault.js.map +1 -1
- package/dist/node/gitvault-publication.d.ts +67 -1
- package/dist/node/gitvault-publication.d.ts.map +1 -1
- package/dist/node/gitvault-publication.js +60 -2
- package/dist/node/gitvault-publication.js.map +1 -1
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.d.ts.map +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +1 -1
package/core-dist/config.js
CHANGED
|
@@ -2,6 +2,7 @@ import { homedir } from "node:os";
|
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
3
|
import { existsSync, renameSync, mkdirSync, chmodSync, readFileSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { randomBytes } from "node:crypto";
|
|
5
|
+
import { describeRejectedValue } from "./redact.js";
|
|
5
6
|
export const DEFAULT_API_BASE = "https://api.run402.com";
|
|
6
7
|
/**
|
|
7
8
|
* Validate a user-supplied API base URL. Throws a clear error message that
|
|
@@ -25,10 +26,10 @@ function validateApiBase(envVar, raw, fallback) {
|
|
|
25
26
|
u = new URL(raw);
|
|
26
27
|
}
|
|
27
28
|
catch {
|
|
28
|
-
throw new Error(`${envVar} is not a valid URL: ${JSON.stringify(raw)}. Expected an http(s) URL like https://api.run402.com.`);
|
|
29
|
+
throw new Error(`${envVar} is not a valid URL: ${JSON.stringify(describeRejectedValue(raw))}. Expected an http(s) URL like https://api.run402.com.`);
|
|
29
30
|
}
|
|
30
31
|
if (u.protocol !== "https:" && u.protocol !== "http:") {
|
|
31
|
-
throw new Error(`${envVar} must use http(s):, got ${u.protocol} (full value: ${JSON.stringify(raw)}).`);
|
|
32
|
+
throw new Error(`${envVar} must use http(s):, got ${u.protocol} (full value: ${JSON.stringify(describeRejectedValue(raw))}).`);
|
|
32
33
|
}
|
|
33
34
|
return raw;
|
|
34
35
|
}
|
|
@@ -81,7 +82,15 @@ function assertSafeProfileName(name) {
|
|
|
81
82
|
if (name === DEFAULT_PROFILE)
|
|
82
83
|
return;
|
|
83
84
|
if (!isValidProfileName(name)) {
|
|
84
|
-
|
|
85
|
+
// A value that failed this check is a value we know nothing about — the
|
|
86
|
+
// most likely mistake is a typo, but kychee-com/run402-private#640 was a
|
|
87
|
+
// Base-mainnet private key pasted into RUN402_WALLET (a NAME field), and
|
|
88
|
+
// the raw value used to be echoed straight into this message and
|
|
89
|
+
// wherever it propagated (terminal, logs, session transcripts).
|
|
90
|
+
// describeRejectedValue() shows short/plain values in full (useful for
|
|
91
|
+
// an actual typo) and redacts anything long or hex-shaped enough to be
|
|
92
|
+
// a secret instead of a name.
|
|
93
|
+
throw new Error(`Invalid wallet/profile name ${JSON.stringify(describeRejectedValue(name))}. ` +
|
|
85
94
|
"Names must match /^[a-z0-9][a-z0-9_-]{0,63}$/ (lowercase letters, digits, '_' and '-'). " +
|
|
86
95
|
"Check the RUN402_WALLET / RUN402_PROFILE env var.");
|
|
87
96
|
}
|
package/core-dist/profiles.js
CHANGED
|
@@ -18,6 +18,7 @@ import { readFileSync, writeFileSync, mkdirSync, renameSync, chmodSync, existsSy
|
|
|
18
18
|
import { dirname, join } from "node:path";
|
|
19
19
|
import { randomBytes } from "node:crypto";
|
|
20
20
|
import { getConfigBaseDir, getProfilesDir, DEFAULT_PROFILE, isValidProfileName, } from "./config.js";
|
|
21
|
+
import { describeRejectedValue } from "./redact.js";
|
|
21
22
|
function atomicWrite(p, content, mode) {
|
|
22
23
|
const dir = dirname(p);
|
|
23
24
|
mkdirSync(dir, { recursive: true });
|
|
@@ -153,7 +154,10 @@ export function removeProfile(name) {
|
|
|
153
154
|
*/
|
|
154
155
|
export function renameProfile(oldName, newName) {
|
|
155
156
|
if (!isValidProfileName(newName)) {
|
|
156
|
-
|
|
157
|
+
// See describeRejectedValue()'s doc comment (kychee-com/run402-private#640):
|
|
158
|
+
// a rejected value may be a secret pasted into a name field, so it is
|
|
159
|
+
// never safe to echo verbatim here.
|
|
160
|
+
throw new Error(`Invalid wallet name ${JSON.stringify(describeRejectedValue(newName))}.`);
|
|
157
161
|
}
|
|
158
162
|
if (newName === oldName)
|
|
159
163
|
return;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safe-echo policy for values that failed local (client-side) validation.
|
|
3
|
+
*
|
|
4
|
+
* A value rejected by a format/existence check is a value we know nothing
|
|
5
|
+
* about — the CLI has only established what it is NOT. The likeliest
|
|
6
|
+
* failure is an ordinary typo, but the second likeliest, demonstrated in
|
|
7
|
+
* practice, is a credential pasted into the wrong slot:
|
|
8
|
+
* kychee-com/run402-private#640 — a Base-mainnet private key holding real
|
|
9
|
+
* funds landed in `RUN402_WALLET` (which takes a wallet NAME, not a key),
|
|
10
|
+
* failed the name check, and was printed verbatim to a terminal, a log, and
|
|
11
|
+
* a session transcript.
|
|
12
|
+
*
|
|
13
|
+
* `describeRejectedValue` is the one place that decides what a rejected
|
|
14
|
+
* value is safe to show, so every call site — wallet names, org ids, room
|
|
15
|
+
* keys, unknown commands/subcommands, "not found" lookups — gets the same
|
|
16
|
+
* answer instead of each reinventing (or forgetting) the judgment call.
|
|
17
|
+
*
|
|
18
|
+
* Short, low-entropy values (ordinary typos) are returned unchanged — that
|
|
19
|
+
* is what makes the resulting error message useful. Long or
|
|
20
|
+
* high-entropy-looking values are replaced with a shape-only description
|
|
21
|
+
* (character count only), never a substring or prefix of the original:
|
|
22
|
+
* even a short prefix of a private key is more than a debugging aid needs
|
|
23
|
+
* and more than a leak should give up.
|
|
24
|
+
*
|
|
25
|
+
* This is a heuristic, not a content-aware secret scanner: treat "returned
|
|
26
|
+
* unchanged" as "short and plain enough to be a typo," not as proof the
|
|
27
|
+
* value holds no secret. Callers with a value that is never supposed to be
|
|
28
|
+
* secret-shaped in the first place (a service key, an admin key) should
|
|
29
|
+
* still never echo it at all, redacted or not — this helper is for slots
|
|
30
|
+
* that normally hold a plain identifier and occasionally, by mistake,
|
|
31
|
+
* don't.
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* Return `value` unchanged when it is short and plain enough to be a
|
|
35
|
+
* harmless typo; otherwise return a shape-only placeholder (character count
|
|
36
|
+
* only — never a substring) that is still safe to embed in a message or a
|
|
37
|
+
* structured `details` field.
|
|
38
|
+
*
|
|
39
|
+
* Never throws. Coerces non-string input the same way template-literal
|
|
40
|
+
* interpolation would, so a caller can pass whatever it already has without
|
|
41
|
+
* a separate type check.
|
|
42
|
+
*/
|
|
43
|
+
export declare function describeRejectedValue(value: unknown): string;
|
|
44
|
+
//# sourceMappingURL=redact.d.ts.map
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safe-echo policy for values that failed local (client-side) validation.
|
|
3
|
+
*
|
|
4
|
+
* A value rejected by a format/existence check is a value we know nothing
|
|
5
|
+
* about — the CLI has only established what it is NOT. The likeliest
|
|
6
|
+
* failure is an ordinary typo, but the second likeliest, demonstrated in
|
|
7
|
+
* practice, is a credential pasted into the wrong slot:
|
|
8
|
+
* kychee-com/run402-private#640 — a Base-mainnet private key holding real
|
|
9
|
+
* funds landed in `RUN402_WALLET` (which takes a wallet NAME, not a key),
|
|
10
|
+
* failed the name check, and was printed verbatim to a terminal, a log, and
|
|
11
|
+
* a session transcript.
|
|
12
|
+
*
|
|
13
|
+
* `describeRejectedValue` is the one place that decides what a rejected
|
|
14
|
+
* value is safe to show, so every call site — wallet names, org ids, room
|
|
15
|
+
* keys, unknown commands/subcommands, "not found" lookups — gets the same
|
|
16
|
+
* answer instead of each reinventing (or forgetting) the judgment call.
|
|
17
|
+
*
|
|
18
|
+
* Short, low-entropy values (ordinary typos) are returned unchanged — that
|
|
19
|
+
* is what makes the resulting error message useful. Long or
|
|
20
|
+
* high-entropy-looking values are replaced with a shape-only description
|
|
21
|
+
* (character count only), never a substring or prefix of the original:
|
|
22
|
+
* even a short prefix of a private key is more than a debugging aid needs
|
|
23
|
+
* and more than a leak should give up.
|
|
24
|
+
*
|
|
25
|
+
* This is a heuristic, not a content-aware secret scanner: treat "returned
|
|
26
|
+
* unchanged" as "short and plain enough to be a typo," not as proof the
|
|
27
|
+
* value holds no secret. Callers with a value that is never supposed to be
|
|
28
|
+
* secret-shaped in the first place (a service key, an admin key) should
|
|
29
|
+
* still never echo it at all, redacted or not — this helper is for slots
|
|
30
|
+
* that normally hold a plain identifier and occasionally, by mistake,
|
|
31
|
+
* don't.
|
|
32
|
+
*/
|
|
33
|
+
// Real hand-typed identifiers (wallet names, room keys, command names) top
|
|
34
|
+
// out well under this, and it comfortably clears a UUID (36 chars — the
|
|
35
|
+
// canonical shape of an org id, and *itself* a public, harmless-to-echo
|
|
36
|
+
// identifier even when it's the "wrong" one in a conflict, not a secret).
|
|
37
|
+
// Secrets that land in the wrong slot (private keys, API tokens, JWTs) are
|
|
38
|
+
// almost always well past it — the private key in #640 was 64-66 characters.
|
|
39
|
+
const MAX_SAFE_ECHO_LENGTH = 40;
|
|
40
|
+
// A contiguous hex run (with or without a `0x` prefix) reads as key
|
|
41
|
+
// material or a hash rather than a human-typed identifier, even when short
|
|
42
|
+
// enough to pass the length check above — the exact shape of #640.
|
|
43
|
+
const HEX_RUN_RE = /^(0x)?[0-9a-fA-F]{16,}$/;
|
|
44
|
+
function looksSecretShaped(str) {
|
|
45
|
+
return str.length > MAX_SAFE_ECHO_LENGTH || HEX_RUN_RE.test(str);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Return `value` unchanged when it is short and plain enough to be a
|
|
49
|
+
* harmless typo; otherwise return a shape-only placeholder (character count
|
|
50
|
+
* only — never a substring) that is still safe to embed in a message or a
|
|
51
|
+
* structured `details` field.
|
|
52
|
+
*
|
|
53
|
+
* Never throws. Coerces non-string input the same way template-literal
|
|
54
|
+
* interpolation would, so a caller can pass whatever it already has without
|
|
55
|
+
* a separate type check.
|
|
56
|
+
*/
|
|
57
|
+
export function describeRejectedValue(value) {
|
|
58
|
+
const str = typeof value === "string" ? value : String(value ?? "");
|
|
59
|
+
if (looksSecretShaped(str)) {
|
|
60
|
+
return `${str.length} chars, not shown — too long or hex-shaped to be a typo (may be a credential that landed in the wrong place)`;
|
|
61
|
+
}
|
|
62
|
+
return str;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=redact.js.map
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
import type { Client } from "../kernel.js";
|
|
32
32
|
import { GITVAULT_DURABILITY_STATEMENT, GITVAULT_MIRROR_KEYSTORE_STILL_REQUIRED_STATEMENT, GITVAULT_MIRROR_VALIDITY_NOT_FRESHNESS_STATEMENT, GITVAULT_TERMINAL_LOSS_DOCTOR_TEXT, GITVAULT_TERMINAL_LOSS_STATEMENT } from "./gitvault.crypto.js";
|
|
33
33
|
import type { GitvaultCaptureReceipt, GitvaultHeadsListingPage, GitvaultHeadsListingRequest, GitvaultHeadTarget, GitvaultOpenReceipt, GitvaultRecipientConfirmationReceipt, GitvaultRecoveryReceipt, GitvaultRotationReason } from "./gitvault.types.js";
|
|
34
|
-
import type { GitvaultMaintenanceLease, GitvaultMaintenanceLeaseRequest, GitvaultTransport, GitvaultVaultRecord } from "../node/gitvault-publication.js";
|
|
34
|
+
import type { GitvaultCompactionGrant, GitvaultMaintenanceLease, GitvaultMaintenanceLeaseRequest, GitvaultTransport, GitvaultVaultRecord } from "../node/gitvault-publication.js";
|
|
35
35
|
import type { GitvaultDeployOptions, GitvaultDeployResult } from "../node/gitvault-deploy.js";
|
|
36
36
|
import type { GitvaultPublishResult, GitvaultRefMap, GitvaultReconcileEnvelopeRecipientsResult, GitvaultVerifiedState } from "../node/gitvault-publication.js";
|
|
37
37
|
import type { GitvaultCreationResult } from "../node/gitvault-creation-journal.js";
|
|
@@ -228,16 +228,29 @@ export interface GitvaultCompactResult {
|
|
|
228
228
|
export interface GitvaultCompactHeadroom {
|
|
229
229
|
/** Pooled storage the org is already using, across every project it owns. */
|
|
230
230
|
pool_used_bytes: number;
|
|
231
|
-
/** The org's pooled tier storage limit. */
|
|
231
|
+
/** The org's plain, unraised pooled tier storage limit — always the tier's own figure, never the grant-raised one, so a disclosed "used of X pooled" never implies the tier itself grew. */
|
|
232
232
|
pool_limit_bytes: number;
|
|
233
233
|
/** The vault's billed `source_bytes` — the checkpoint-size proxy (design D1). */
|
|
234
234
|
vault_source_bytes: number;
|
|
235
235
|
/** `pool_used_bytes + vault_source_bytes`. */
|
|
236
236
|
projected_transient_bytes: number;
|
|
237
|
-
/** `false` when the projection exceeds the limit. */
|
|
237
|
+
/** `false` when the projection exceeds the EFFECTIVE limit (`effective_pool_limit_bytes` when a grant is active, else `pool_limit_bytes`). */
|
|
238
238
|
ok: boolean;
|
|
239
239
|
/** `true` when the caller passed the override and a `false` `ok` was proceeded past anyway. */
|
|
240
240
|
overridden: boolean;
|
|
241
|
+
/**
|
|
242
|
+
* gitvault-checkpoint-cadence design D3: `pool_limit_bytes` PLUS an active
|
|
243
|
+
* compaction grant's `granted_bytes`, when one is active for this cycle —
|
|
244
|
+
* the limit `ok`/`projected_transient_bytes` are actually computed
|
|
245
|
+
* against. Equal to `pool_limit_bytes` (and omittable) when no grant is
|
|
246
|
+
* active.
|
|
247
|
+
*/
|
|
248
|
+
effective_pool_limit_bytes?: number;
|
|
249
|
+
/** The grant this compaction opened for itself, when one was opened and is still tracked at disclosure time — `null`/absent otherwise (no grant, an older gateway, or one already closed). */
|
|
250
|
+
compaction_grant?: {
|
|
251
|
+
granted_bytes: number;
|
|
252
|
+
expires_at: string;
|
|
253
|
+
} | null;
|
|
241
254
|
}
|
|
242
255
|
/**
|
|
243
256
|
* `run402 gitvault snapshot --dry-run`'s report shape
|
|
@@ -1111,6 +1124,20 @@ export declare class Gitvault {
|
|
|
1111
1124
|
* figures cannot be read.
|
|
1112
1125
|
*/
|
|
1113
1126
|
compactHeadroom(options?: GitvaultVaultHandleOptions): Promise<GitvaultCompactHeadroom | null>;
|
|
1127
|
+
/**
|
|
1128
|
+
* Open this vault's compaction headroom grant directly (gitvault-checkpoint-cadence
|
|
1129
|
+
* design D3) — `compact()` already does this internally; this standalone
|
|
1130
|
+
* entry point exists for callers that need to inspect or drive the grant
|
|
1131
|
+
* without also running a full compaction cycle (tests; a future
|
|
1132
|
+
* operator/diagnostic surface). Throws `GITVAULT_COMPACTION_GRANT_ACTIVE`
|
|
1133
|
+
* (409) verbatim when another compaction already holds this project's
|
|
1134
|
+
* grant.
|
|
1135
|
+
*/
|
|
1136
|
+
openCompactionGrant(options?: GitvaultVaultHandleOptions): Promise<GitvaultCompactionGrant>;
|
|
1137
|
+
/** Close this vault's compaction headroom grant directly — idempotent; `{closed: false}` when nothing was active. */
|
|
1138
|
+
closeCompactionGrant(options?: GitvaultVaultHandleOptions): Promise<{
|
|
1139
|
+
closed: boolean;
|
|
1140
|
+
}>;
|
|
1114
1141
|
/**
|
|
1115
1142
|
* Publish a checkpoint covering the canonical refs, every root unexpired at
|
|
1116
1143
|
* the cutoff, and the `HEAD` target — under a maintenance lease so a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitvault.d.ts","sourceRoot":"","sources":["../../src/namespaces/gitvault.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gitvault.d.ts","sourceRoot":"","sources":["../../src/namespaces/gitvault.ts"],"names":[],"mappings":"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"}
|
|
@@ -1126,8 +1126,35 @@ export class Gitvault {
|
|
|
1126
1126
|
// transport, and no Node runtime.
|
|
1127
1127
|
return this.#readCompactHeadroom(await this.#resolveRepoId(options));
|
|
1128
1128
|
}
|
|
1129
|
-
/**
|
|
1130
|
-
|
|
1129
|
+
/**
|
|
1130
|
+
* Open this vault's compaction headroom grant directly (gitvault-checkpoint-cadence
|
|
1131
|
+
* design D3) — `compact()` already does this internally; this standalone
|
|
1132
|
+
* entry point exists for callers that need to inspect or drive the grant
|
|
1133
|
+
* without also running a full compaction cycle (tests; a future
|
|
1134
|
+
* operator/diagnostic surface). Throws `GITVAULT_COMPACTION_GRANT_ACTIVE`
|
|
1135
|
+
* (409) verbatim when another compaction already holds this project's
|
|
1136
|
+
* grant.
|
|
1137
|
+
*/
|
|
1138
|
+
async openCompactionGrant(options = {}) {
|
|
1139
|
+
const handle = await this.open(options);
|
|
1140
|
+
return handle.vault.openCompactionGrant();
|
|
1141
|
+
}
|
|
1142
|
+
/** Close this vault's compaction headroom grant directly — idempotent; `{closed: false}` when nothing was active. */
|
|
1143
|
+
async closeCompactionGrant(options = {}) {
|
|
1144
|
+
const handle = await this.open(options);
|
|
1145
|
+
return handle.vault.closeCompactionGrant();
|
|
1146
|
+
}
|
|
1147
|
+
/**
|
|
1148
|
+
* The arithmetic, with no policy: the block, or `null` when unanswerable.
|
|
1149
|
+
*
|
|
1150
|
+
* `effectiveLimitOverride` (gitvault-checkpoint-cadence design D3): when a
|
|
1151
|
+
* compaction grant is active for this cycle, `compact()` passes the
|
|
1152
|
+
* grant's `effective_pool_limit_bytes` here so `ok`/`projected_transient_bytes`
|
|
1153
|
+
* reflect the RAISED limit — `pool_limit_bytes` itself always stays the
|
|
1154
|
+
* tier's own figure (never the raised one), so disclosure never implies
|
|
1155
|
+
* the tier grew.
|
|
1156
|
+
*/
|
|
1157
|
+
async #readCompactHeadroom(repoId, effectiveLimitOverride) {
|
|
1131
1158
|
/** Posture (3): one note, on stderr, and `null` — never a throw. */
|
|
1132
1159
|
const unanswerable = (why) => {
|
|
1133
1160
|
globalThis.console?.error?.(`run402: could not check compaction storage headroom (${why}); proceeding — the platform's storage quota remains authoritative.`);
|
|
@@ -1155,25 +1182,33 @@ export class Gitvault {
|
|
|
1155
1182
|
if (!Number.isFinite(poolUsed) || !Number.isFinite(poolLimit) || !Number.isFinite(sourceBytes) || poolLimit <= 0) {
|
|
1156
1183
|
return unanswerable("tier status carried no usable pooled-storage figures");
|
|
1157
1184
|
}
|
|
1185
|
+
// The grant's byte fields arrive as STRINGS on the wire (gateway BIGINT
|
|
1186
|
+
// serialization, verified live) — coerce BEFORE the finiteness gate, or
|
|
1187
|
+
// `Number.isFinite("472697418")` (false, no coercion) silently discards
|
|
1188
|
+
// an opened grant and the preflight refuses with the unraised limit.
|
|
1189
|
+
const overrideNum = effectiveLimitOverride === undefined ? Number.NaN : Number(effectiveLimitOverride);
|
|
1190
|
+
const effectiveLimit = Number.isFinite(overrideNum) && overrideNum > 0 ? overrideNum : poolLimit;
|
|
1158
1191
|
const projected = poolUsed + sourceBytes;
|
|
1159
1192
|
return {
|
|
1160
1193
|
pool_used_bytes: poolUsed,
|
|
1161
1194
|
pool_limit_bytes: poolLimit,
|
|
1162
1195
|
vault_source_bytes: sourceBytes,
|
|
1163
1196
|
projected_transient_bytes: projected,
|
|
1164
|
-
ok: projected <=
|
|
1197
|
+
ok: projected <= effectiveLimit,
|
|
1165
1198
|
overridden: false,
|
|
1199
|
+
...(effectiveLimit !== poolLimit ? { effective_pool_limit_bytes: effectiveLimit } : {}),
|
|
1166
1200
|
};
|
|
1167
1201
|
}
|
|
1168
1202
|
/** The reader plus compaction's policy (refuse / override / proceed). */
|
|
1169
|
-
async #compactHeadroomPreflight(repoId, ignore) {
|
|
1170
|
-
const headroom = await this.#readCompactHeadroom(repoId);
|
|
1203
|
+
async #compactHeadroomPreflight(repoId, ignore, effectiveLimitOverride) {
|
|
1204
|
+
const headroom = await this.#readCompactHeadroom(repoId, effectiveLimitOverride);
|
|
1171
1205
|
if (headroom === null)
|
|
1172
1206
|
return null;
|
|
1173
|
-
const { pool_used_bytes: poolUsed, pool_limit_bytes: poolLimit, vault_source_bytes: sourceBytes, projected_transient_bytes: projected, ok } = headroom;
|
|
1207
|
+
const { pool_used_bytes: poolUsed, pool_limit_bytes: poolLimit, vault_source_bytes: sourceBytes, projected_transient_bytes: projected, ok, effective_pool_limit_bytes: effectiveLimit } = headroom;
|
|
1174
1208
|
if (!ok && !ignore) {
|
|
1175
|
-
|
|
1176
|
-
|
|
1209
|
+
const limitForMessage = effectiveLimit ?? poolLimit;
|
|
1210
|
+
throw new LocalError(`compaction needs about ${mib(sourceBytes)} of transient headroom and the org's pooled storage has ${mib(Math.max(limitForMessage - poolUsed, 0))} free ` +
|
|
1211
|
+
`(${mib(poolUsed)} used of ${mib(limitForMessage)}${effectiveLimit !== undefined ? ` — includes an active compaction grant raising the ${mib(poolLimit)} tier limit` : ""}; projected ${mib(projected)}). Compaction transiently holds BOTH the new checkpoint and the ` +
|
|
1177
1212
|
`not-yet-pruned history — roughly 2x source_bytes — until a prune completes. Free storage, raise the tier, or re-run with --force-headroom ` +
|
|
1178
1213
|
`(the platform's own quota enforcement stays authoritative either way).`, "preflighting gitvault compaction storage headroom", {
|
|
1179
1214
|
code: "GITVAULT_COMPACT_INSUFFICIENT_HEADROOM",
|
|
@@ -1182,12 +1217,18 @@ export class Gitvault {
|
|
|
1182
1217
|
pool_limit_bytes: poolLimit,
|
|
1183
1218
|
vault_source_bytes: sourceBytes,
|
|
1184
1219
|
projected_transient_bytes: projected,
|
|
1220
|
+
...(effectiveLimit !== undefined ? { effective_pool_limit_bytes: effectiveLimit } : {}),
|
|
1185
1221
|
override: "--force-headroom",
|
|
1186
1222
|
},
|
|
1187
1223
|
});
|
|
1188
1224
|
}
|
|
1189
1225
|
return { ...headroom, overridden: !ok && ignore };
|
|
1190
1226
|
}
|
|
1227
|
+
/** A 409 `GITVAULT_COMPACTION_GRANT_ACTIVE` refusal — another compaction already holds this project's grant. */
|
|
1228
|
+
#isCompactionGrantActive(e) {
|
|
1229
|
+
const err = e;
|
|
1230
|
+
return Boolean(err && err.code === "GITVAULT_COMPACTION_GRANT_ACTIVE");
|
|
1231
|
+
}
|
|
1191
1232
|
/**
|
|
1192
1233
|
* Publish a checkpoint covering the canonical refs, every root unexpired at
|
|
1193
1234
|
* the cutoff, and the `HEAD` target — under a maintenance lease so a
|
|
@@ -1200,9 +1241,52 @@ export class Gitvault {
|
|
|
1200
1241
|
*/
|
|
1201
1242
|
async compact(options = {}) {
|
|
1202
1243
|
const handle = await this.open(options);
|
|
1244
|
+
// gitvault-checkpoint-cadence design D3: open the compaction headroom
|
|
1245
|
+
// grant BEFORE the preflight (which needs its raised limit) and before
|
|
1246
|
+
// any checkpoint is built or uploaded — same ordering rule as the
|
|
1247
|
+
// preflight itself. Three outcomes:
|
|
1248
|
+
// - opened: `grant` carries `effective_pool_limit_bytes`, threaded
|
|
1249
|
+
// into the preflight below.
|
|
1250
|
+
// - 409 GITVAULT_COMPACTION_GRANT_ACTIVE: another compaction (this
|
|
1251
|
+
// process, another process, auto-gc or manual `repos gc`) already
|
|
1252
|
+
// holds this project's one-at-a-time grant — refuse rather than
|
|
1253
|
+
// race it. This is this change's single-flight-per-vault guarantee;
|
|
1254
|
+
// it applies to every `compact()` caller, not just auto-gc.
|
|
1255
|
+
// - 404/absent route (an older gateway): proceed exactly as before
|
|
1256
|
+
// this change existed — `grant` stays `null`, no raised limit.
|
|
1257
|
+
// - any OTHER failure (network, 5xx): also proceeds without a grant
|
|
1258
|
+
// — a grant that could not be confirmed open must never be
|
|
1259
|
+
// ASSUMED open, and failing the whole compaction because an
|
|
1260
|
+
// ancillary raise-the-limit call errored would make routine
|
|
1261
|
+
// maintenance depend on an availability property narrower than
|
|
1262
|
+
// compaction itself needs.
|
|
1263
|
+
let grant = null;
|
|
1264
|
+
try {
|
|
1265
|
+
grant = await handle.vault.openCompactionGrant();
|
|
1266
|
+
}
|
|
1267
|
+
catch (e) {
|
|
1268
|
+
if (this.#isCompactionGrantActive(e)) {
|
|
1269
|
+
throw new LocalError(`another compaction is already in progress for this vault (its headroom grant expires ${e.details?.expires_at ?? "soon"}) — refusing to race it.`, "opening the gitvault compaction headroom grant", { code: "GITVAULT_COMPACTION_IN_PROGRESS", details: { expires_at: e.details?.expires_at ?? null } });
|
|
1270
|
+
}
|
|
1271
|
+
// 404/absent-route or any other failure: proceed ungranted.
|
|
1272
|
+
}
|
|
1273
|
+
// Everything from here on is bracketed by the grant's own lifetime —
|
|
1274
|
+
// including the preflight's OWN possible throw (`GITVAULT_COMPACT_
|
|
1275
|
+
// INSUFFICIENT_HEADROOM`) — so a refusal still closes a grant this call
|
|
1276
|
+
// opened rather than leaking it until the gateway's hourly sweep.
|
|
1277
|
+
try {
|
|
1278
|
+
return await this.#compactAfterGrant(handle, options, grant);
|
|
1279
|
+
}
|
|
1280
|
+
finally {
|
|
1281
|
+
if (grant)
|
|
1282
|
+
await handle.vault.closeCompactionGrant().catch(() => undefined);
|
|
1283
|
+
}
|
|
1284
|
+
}
|
|
1285
|
+
/** The rest of `compact()`, run under an already-opened-or-skipped grant — split out so the grant's `finally` above covers every exit path, including the preflight's own throw. */
|
|
1286
|
+
async #compactAfterGrant(handle, options, grant) {
|
|
1203
1287
|
// BEFORE any checkpoint is built or uploaded (that ordering is the whole
|
|
1204
1288
|
// point — see GitvaultCompactHeadroom).
|
|
1205
|
-
const headroom = await this.#compactHeadroomPreflight(handle.repo_id, options.ignoreHeadroom === true);
|
|
1289
|
+
const headroom = await this.#compactHeadroomPreflight(handle.repo_id, options.ignoreHeadroom === true, grant?.effective_pool_limit_bytes);
|
|
1206
1290
|
const base = await handle.vault.materialize();
|
|
1207
1291
|
let lease = null;
|
|
1208
1292
|
if (options.lease !== false) {
|
|
@@ -1237,7 +1321,7 @@ export class Gitvault {
|
|
|
1237
1321
|
cutoff_bound: cutoffBound,
|
|
1238
1322
|
covered_refs: Object.keys(published.refs).length,
|
|
1239
1323
|
covered_roots: base.roots.length,
|
|
1240
|
-
headroom,
|
|
1324
|
+
headroom: headroom && grant ? { ...headroom, compaction_grant: { granted_bytes: Number(grant.granted_bytes), expires_at: grant.expires_at } } : headroom,
|
|
1241
1325
|
};
|
|
1242
1326
|
}
|
|
1243
1327
|
finally {
|
|
@@ -1246,6 +1330,11 @@ export class Gitvault {
|
|
|
1246
1330
|
.request(`/gitvault/v1/vaults/${encodeURIComponent(handle.repo_id)}/maintenance-leases/${encodeURIComponent(lease.maintenance_lease_id)}`, { method: "DELETE", body: { holder_token: lease.holder_token }, context: "releasing the gitvault maintenance lease" })
|
|
1247
1331
|
.catch(() => undefined);
|
|
1248
1332
|
}
|
|
1333
|
+
// The compaction headroom grant (if one was opened) is closed by the
|
|
1334
|
+
// caller — `compact()`'s own `finally`, which wraps this ENTIRE
|
|
1335
|
+
// method so a preflight refusal closes it too. Design D3's rationale
|
|
1336
|
+
// for closing promptly (prune only ever REMOVES objects, so nothing
|
|
1337
|
+
// past the checkpoint publish needs the raised limit) lives there.
|
|
1249
1338
|
}
|
|
1250
1339
|
}
|
|
1251
1340
|
/**
|