@veilio-inc/cli 0.7.0 → 0.9.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 (67) hide show
  1. package/README.md +157 -14
  2. package/dist/client/blocks.d.ts +30 -0
  3. package/dist/client/blocks.d.ts.map +1 -0
  4. package/dist/client/blocks.js +125 -0
  5. package/dist/client/blocks.js.map +1 -0
  6. package/dist/client/maps.d.ts +8 -0
  7. package/dist/client/maps.d.ts.map +1 -1
  8. package/dist/client/maps.js +260 -16
  9. package/dist/client/maps.js.map +1 -1
  10. package/dist/client/rules-skipped.d.ts +22 -0
  11. package/dist/client/rules-skipped.d.ts.map +1 -0
  12. package/dist/client/rules-skipped.js +30 -0
  13. package/dist/client/rules-skipped.js.map +1 -0
  14. package/dist/client/wording.d.ts +2 -2
  15. package/dist/client/wording.d.ts.map +1 -1
  16. package/dist/client/wording.js +15 -0
  17. package/dist/client/wording.js.map +1 -1
  18. package/dist/cloud-commands.d.ts +5 -3
  19. package/dist/cloud-commands.d.ts.map +1 -1
  20. package/dist/cloud-commands.js +109 -28
  21. package/dist/cloud-commands.js.map +1 -1
  22. package/dist/cloud.d.ts +74 -7
  23. package/dist/cloud.d.ts.map +1 -1
  24. package/dist/cloud.js +205 -3
  25. package/dist/cloud.js.map +1 -1
  26. package/dist/commands.d.ts +10 -0
  27. package/dist/commands.d.ts.map +1 -1
  28. package/dist/commands.js +95 -15
  29. package/dist/commands.js.map +1 -1
  30. package/dist/credential.d.ts +12 -0
  31. package/dist/credential.d.ts.map +1 -1
  32. package/dist/credential.js +48 -0
  33. package/dist/credential.js.map +1 -1
  34. package/dist/flags.js +2 -2
  35. package/dist/flags.js.map +1 -1
  36. package/dist/hashed-bases.d.ts +12 -0
  37. package/dist/hashed-bases.d.ts.map +1 -0
  38. package/dist/hashed-bases.js +45 -0
  39. package/dist/hashed-bases.js.map +1 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +1 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/reservations.d.ts +145 -0
  44. package/dist/reservations.d.ts.map +1 -0
  45. package/dist/reservations.js +348 -0
  46. package/dist/reservations.js.map +1 -0
  47. package/dist/rules-open.d.ts +16 -0
  48. package/dist/rules-open.d.ts.map +1 -0
  49. package/dist/rules-open.js +87 -0
  50. package/dist/rules-open.js.map +1 -0
  51. package/dist/rules.d.ts +20 -2
  52. package/dist/rules.d.ts.map +1 -1
  53. package/dist/rules.js +86 -4
  54. package/dist/rules.js.map +1 -1
  55. package/dist/store.d.ts +3 -0
  56. package/dist/store.d.ts.map +1 -1
  57. package/dist/store.js +19 -1
  58. package/dist/store.js.map +1 -1
  59. package/dist/team-anonymize.d.ts +16 -1
  60. package/dist/team-anonymize.d.ts.map +1 -1
  61. package/dist/team-anonymize.js +39 -13
  62. package/dist/team-anonymize.js.map +1 -1
  63. package/dist/team-namespace.d.ts +59 -4
  64. package/dist/team-namespace.d.ts.map +1 -1
  65. package/dist/team-namespace.js +133 -11
  66. package/dist/team-namespace.js.map +1 -1
  67. package/package.json +7 -5
package/dist/cloud.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import type { Credential } from './credential.js';
2
- import type { CustomRule } from '@veilio-inc/engine';
3
2
  /** The public Cloud. `--instance` overrides it for a self-hosted deployment. */
4
3
  export declare const DEFAULT_INSTANCE = "https://app.veilio.dev";
5
4
  /**
@@ -102,6 +101,13 @@ export interface CloudMapList {
102
101
  * key wraps. */
103
102
  team: {
104
103
  id: string;
104
+ /** Spec 063: the runs of team numbers this account holds. Absent on an
105
+ * instance from before it, which keeps no such record. */
106
+ reservations?: {
107
+ base: string;
108
+ start: number;
109
+ end: number;
110
+ }[];
105
111
  } | null;
106
112
  plan: string;
107
113
  }
@@ -142,11 +148,25 @@ export type VaultInfo = {
142
148
  };
143
149
  };
144
150
  export declare function listMaps(credential: Credential, signal?: AbortSignal): Promise<CloudMapList>;
145
- /** The account's custom rules: its own, and those of the teams it is in. */
146
- export declare function listRules(credential: Credential): Promise<{
147
- rules: CustomRule[];
148
- teamRules: CustomRule[];
149
- }>;
151
+ /** A custom rule as Cloud holds it (spec 065): only what it needs to store and
152
+ * order it is readable. `data` is the customer's envelope as a JSON string - a
153
+ * vault envelope under the personal-maps key, or a team envelope under the team
154
+ * key - holding the name, type, pattern, placeholder and enabled state. */
155
+ export interface SealedRule {
156
+ id: string;
157
+ scope: 'personal' | 'team';
158
+ team_id: string | null;
159
+ sort_order: number;
160
+ key_version?: number;
161
+ data: string;
162
+ updated_at?: string;
163
+ }
164
+ export interface SealedRuleList {
165
+ rules: SealedRule[];
166
+ teamRules: SealedRule[];
167
+ }
168
+ /** The account's custom rules, sealed: its own, and those of the teams it is in. */
169
+ export declare function listRules(credential: Credential): Promise<SealedRuleList>;
150
170
  /**
151
171
  * Every team map this account can reach, with envelopes, in one request. Cloud
152
172
  * added it so building the namespace is not one request per map against the
@@ -158,8 +178,11 @@ export declare function getTeamEnvelopes(credential: Credential, signal?: AbortS
158
178
  id: string;
159
179
  created_at: string;
160
180
  map_data: string;
181
+ owner_id?: string;
161
182
  }[];
162
183
  unreadable: string[];
184
+ /** Spec 063: who holds which of the team's numbers. Absent on an older instance. */
185
+ reservations?: PlaceholderReservation[];
163
186
  }>;
164
187
  export declare function getMap(credential: Credential, id: string, signal?: AbortSignal): Promise<CloudMap>;
165
188
  /**
@@ -248,6 +271,7 @@ export declare function listProjects(credential: Credential, signal?: AbortSigna
248
271
  export declare function getTeamKeyPending(credential: Credential, teamId: string): Promise<{
249
272
  rotationNeededSince?: string | null;
250
273
  nextVersion?: number;
274
+ version?: number;
251
275
  }>;
252
276
  /** Who this session belongs to: the account id a key grant names. */
253
277
  export declare function getMe(credential: Credential): Promise<{
@@ -294,9 +318,52 @@ export declare function reservePlaceholders(credential: Credential, teamId: stri
294
318
  base: string;
295
319
  count: number;
296
320
  floor: number;
297
- }[], signal?: AbortSignal): Promise<{
321
+ }[], signal?: AbortSignal, options?: {
322
+ block?: boolean;
323
+ /** The team's raw keys, newest first: a rule's base is sent as its hash
324
+ * under the newest (founder decision, Cloud audit M1). */
325
+ keys?: readonly Uint8Array[];
326
+ /** The newest key's version (`teamKeyVersion`): a rule base is reserved
327
+ * only while the server's current version is this one. */
328
+ keyVersion?: number;
329
+ /** The team's reservations, when the caller has already read them;
330
+ * null when it asked and the instance keeps no record (404). */
331
+ reservations?: readonly PlaceholderReservation[] | null;
332
+ }): Promise<{
298
333
  ranges: PlaceholderRange[];
334
+ refused?: {
335
+ bases: string[];
336
+ detail: string;
337
+ };
338
+ /** The floor sent per real base, once vouched (round 4): a run must start above it. */
339
+ floors?: Record<string, number>;
299
340
  }>;
341
+ /**
342
+ * Round 4 (E): the team's reservations of these bases only - the server
343
+ * answers `?bases=` with every row of each, never cut short for one, and each
344
+ * base's `highest`. An older server ignores the parameter or refuses it (400):
345
+ * the whole listing then, read here and filtered, as before. Null: the
346
+ * instance keeps no record of reservations (404).
347
+ */
348
+ export declare function readReservationsFor(credential: Credential, teamId: string, bases: readonly string[], signal?: AbortSignal): Promise<{
349
+ reservations: PlaceholderReservation[];
350
+ highest: Record<string, number>;
351
+ /** Bases whose rows the server cut short; their `highest` still stands. */
352
+ truncated: string[];
353
+ } | null>;
354
+ /** One run of the team's numbers and the member who reserved it (spec 063). */
355
+ export type PlaceholderReservation = {
356
+ base: string;
357
+ start: number;
358
+ end: number;
359
+ member: string;
360
+ };
361
+ /**
362
+ * Who holds which of the team's numbers: every page. Numbers, kinds and
363
+ * account ids only - restore reads it to leave in place a placeholder whose
364
+ * map was published by someone other than its number's reserver.
365
+ */
366
+ export declare function readReservations(credential: Credential, teamId: string, signal?: AbortSignal): Promise<PlaceholderReservation[]>;
300
367
  /**
301
368
  * Delete a map in Cloud.
302
369
  *
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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"}
package/dist/cloud.js CHANGED
@@ -22,6 +22,8 @@
22
22
  // created ahead of the commands that use it so the boundary exists before
23
23
  // anything crosses it, and so the tests that police it are written against
24
24
  // something real. Phase 4 (`login`, `logout`, `whoami`) is what consumes it.
25
+ import { isEngineBase, isSaneBlock } from '@veilio-inc/engine';
26
+ import { wireBase } from './hashed-bases.js';
25
27
  import { VERSION } from './version.js';
26
28
  /** The public Cloud. `--instance` overrides it for a self-hosted deployment. */
27
29
  export const DEFAULT_INSTANCE = 'https://app.veilio.dev';
@@ -176,7 +178,7 @@ function projectQuery(credential) {
176
178
  export function listMaps(credential, signal) {
177
179
  return request(`/api/maps${projectQuery(credential)}`, { credential, signal });
178
180
  }
179
- /** The account's custom rules: its own, and those of the teams it is in. */
181
+ /** The account's custom rules, sealed: its own, and those of the teams it is in. */
180
182
  export function listRules(credential) {
181
183
  return request('/api/rules', { credential });
182
184
  }
@@ -285,7 +287,8 @@ const PLACEHOLDER_BASE = /^__[A-Z][A-Z0-9_]*__$/;
285
287
  * otherwise create a counter row under a name no placeholder can ever match,
286
288
  * and the numbers reserved against it would be silently unusable.
287
289
  */
288
- export async function reservePlaceholders(credential, teamId, requests, signal) {
290
+ export async function reservePlaceholders(credential, teamId, requests, signal, options = {}) {
291
+ const key = options.keys?.[0];
289
292
  for (const { base, count } of requests) {
290
293
  if (!PLACEHOLDER_BASE.test(base)) {
291
294
  throw new CloudError('forbidden', `${base} is not a placeholder base, so no numbers can be reserved for it`);
@@ -293,8 +296,207 @@ export async function reservePlaceholders(credential, teamId, requests, signal)
293
296
  if (!Number.isInteger(count) || count < 1) {
294
297
  throw new CloudError('forbidden', `cannot reserve ${count} numbers for ${base}`);
295
298
  }
299
+ // Never in plain text: with no key to hash it, nothing is sent.
300
+ if (!isEngineBase(base) && !key) {
301
+ throw new CloudError('forbidden', `numbers for ${base} are reserved under its hash with the team key, and the team key is not unlocked on this machine - run \`veilio team unlock\``);
302
+ }
303
+ }
304
+ // Security review: the server counts per (team, base), so a rule base's
305
+ // numbers reserved under its plain name (an older CLI) or an older key's
306
+ // hash (before a rotation) are invisible to this hash's counter. Floored
307
+ // above every sane reservation under its hash under any key version held
308
+ // here - never its plain name (round 4: those exist only from before
309
+ // hashing, on staging) and never another hash, so one rule's (or a hostile
310
+ // teammate's) huge block cannot floor every other base. No listing, no
311
+ // reservation for a rule base.
312
+ // Security review (Cloud 809444d0): a rule base is hashed under the newest
313
+ // key held here, and only while the server's current version is that one.
314
+ // A server reporting an older one (a downgrade), a newer one or none gets
315
+ // nothing for it; the caller numbers it in the local family and says so.
316
+ // Asked only when a rule base is in the request.
317
+ let refused;
318
+ const rules = requests.filter((r) => !isEngineBase(r.base)).map((r) => r.base);
319
+ if (rules.length) {
320
+ const served = (await getTeamKeyPending(credential, teamId))?.version;
321
+ if (!Number.isInteger(served) || served !== options.keyVersion)
322
+ refused = {
323
+ bases: rules,
324
+ detail: `numbers for ${rules.join(', ')} were not reserved: the team key is at version ${Number.isInteger(served) ? served : 'unknown'} on the server and ${options.keyVersion ?? 'none'} on this machine, so they are numbered on this machine (__LOCAL_…) - run \`veilio team unlock\``.slice(0, 200),
325
+ };
326
+ }
327
+ const refusedBases = new Set(refused?.bases ?? []);
328
+ const refuse = (base, detail) => {
329
+ refusedBases.add(base);
330
+ refused = {
331
+ bases: [...refusedBases],
332
+ detail: (refused ? `${refused.detail}; ${detail}` : detail).slice(0, 200),
333
+ };
334
+ };
335
+ const asked = requests.filter((r) => !refusedBases.has(r.base));
336
+ if (asked.length === 0)
337
+ return { ranges: [], refused };
338
+ // The names a base is listed under: as written for an engine base; a rule
339
+ // base only under its hash with each held key version, never in plain text
340
+ // - a rule's plain reservations exist only from before hashing, on staging.
341
+ const servedNames = (base) => isEngineBase(base) ? [base] : (options.keys ?? []).map((k) => wireBase(base, k));
342
+ // Round 4 (D): a floor counts only numbers the server issued. One no known
343
+ // run vouches for (a map holding a planted __VAR__60000) is checked against
344
+ // the team's listing for its base; still unvouched, it falls to the base's
345
+ // highest issued number - a no-op, the counter is there already - or, for a
346
+ // base never reserved, to at most 10000: the server's own margin, so a map
347
+ // numbered before the team existed still floors its first run.
348
+ const known = options.reservations ?? [];
349
+ const unrecorded = options.reservations === null;
350
+ const vouches = (rows, names, n) => rows.some((h) => names.includes(h?.base) && isSaneBlock(h) && n >= h.start && n <= h.end);
351
+ const topOf = (rows, names) => Math.max(0, ...rows.filter((h) => names.includes(h?.base) && isSaneBlock(h)).map((h) => h.end));
352
+ const unsure = asked.filter((r) => {
353
+ const names = servedNames(r.base);
354
+ if (!isEngineBase(r.base) && !options.reservations && !unrecorded)
355
+ return true;
356
+ return r.floor > topOf(known, names) && !vouches(known, names, r.floor);
357
+ });
358
+ // An instance that keeps no record (404) vouches for nothing and refuses
359
+ // nothing for it: floors stay as the maps say, as before spec 063.
360
+ const listing = unsure.length && !unrecorded
361
+ ? await readReservationsFor(credential, teamId, unsure.flatMap((r) => servedNames(r.base)), signal)
362
+ : null;
363
+ if (listing === null && asked.some((r) => !isEngineBase(r.base)) && (unsure.length || unrecorded))
364
+ await readReservations(credential, teamId, signal); // throws: no listing, no rule base
365
+ const listed = listing ?? { reservations: [], highest: {}, truncated: [] };
366
+ const real = new Map();
367
+ let wire = asked.map((r) => {
368
+ const sent = key ? wireBase(r.base, key) : r.base;
369
+ real.set(sent, r.base);
370
+ const names = servedNames(r.base);
371
+ let floor = r.floor;
372
+ const rows = unsure.includes(r) ? listed.reservations : known;
373
+ const top = Math.max(topOf(rows, names), ...names.map((n) => listed.highest[n] ?? 0));
374
+ if (listing && unsure.includes(r) && !vouches(rows, names, floor))
375
+ floor = top > 0 ? Math.min(floor, top) : Math.min(floor, 10_000);
376
+ // Security review: a rule base's numbers reserved under an older key's
377
+ // hash are another counter: floored above every one of them.
378
+ if (!isEngineBase(r.base))
379
+ floor = Math.max(floor, top);
380
+ return { ...r, base: sent, floor };
381
+ });
382
+ // Round 4 (D): the server answers per base with `partial: true`. One that
383
+ // answers all or nothing (an older server) and names the base it refuses
384
+ // is asked again without it; that base alone falls to the local family.
385
+ let answer = null;
386
+ while (wire.length > 0) {
387
+ try {
388
+ answer = await request(`/api/teams/${encodeURIComponent(teamId)}/placeholders/reserve`, {
389
+ credential,
390
+ method: 'POST',
391
+ // Spec 063: a block, whose size the server sets, for the guard to number in offline.
392
+ body: { requests: wire, ...(options.block ? { block: true } : {}), partial: true },
393
+ signal,
394
+ });
395
+ break;
396
+ }
397
+ catch (err) {
398
+ // Cloud 86772272: the 400 lists the refused bases; an older one only
399
+ // names one in its message.
400
+ const said = err instanceof CloudError && err.status === 400 ? err.message : '';
401
+ const body = err instanceof CloudError ? err.body : undefined;
402
+ const listedRefused = said && Array.isArray(body?.refused) ? body.refused : [];
403
+ const refusedNames = listedRefused.map((x) => typeof x === 'string' ? x : x?.base);
404
+ const named = said
405
+ ? wire.filter((w) => refusedNames.includes(w.base) || said.includes(w.base))
406
+ : [];
407
+ if (named.length === 0)
408
+ throw err;
409
+ for (const w of named)
410
+ refuse(real.get(w.base), printableDetail(said));
411
+ wire = wire.filter((w) => !named.includes(w));
412
+ }
413
+ }
414
+ const floors = Object.fromEntries(wire.map((w) => [real.get(w.base), w.floor]));
415
+ if (!answer)
416
+ return { ranges: [], refused, floors };
417
+ // Read back under the real base; a base the request did not send stays as
418
+ // served, and the caller's check refuses it. A refused base is no range.
419
+ const ranges = Array.isArray(answer?.ranges)
420
+ ? answer.ranges.flatMap((r) => {
421
+ const base = real.get(r?.base) ?? r?.base;
422
+ if (r && typeof r.refused === 'string') {
423
+ refuse(base, printableDetail(`${base}: ${r.message ?? r.refused}`));
424
+ return [];
425
+ }
426
+ return [{ ...r, base }];
427
+ })
428
+ : answer?.ranges;
429
+ return { ...answer, ranges, floors, ...(refused ? { refused } : {}) };
430
+ }
431
+ /** A server's words, as a refusal's detail: one line, no control characters. */
432
+ function printableDetail(text) {
433
+ // eslint-disable-next-line no-control-regex -- matching them is the point
434
+ return text.replace(/[\u0000-\u001f\u007f-\u009f\p{Cf}]/gu, '?').slice(0, 200);
435
+ }
436
+ /**
437
+ * Round 4 (E): the team's reservations of these bases only - the server
438
+ * answers `?bases=` with every row of each, never cut short for one, and each
439
+ * base's `highest`. An older server ignores the parameter or refuses it (400):
440
+ * the whole listing then, read here and filtered, as before. Null: the
441
+ * instance keeps no record of reservations (404).
442
+ */
443
+ export async function readReservationsFor(credential, teamId, bases, signal) {
444
+ const wanted = [...new Set(bases)];
445
+ const rows = [];
446
+ let highest = {};
447
+ const truncated = [];
448
+ try {
449
+ // At most 50 bases a request (Cloud 86772272).
450
+ for (let i = 0; i < wanted.length; i += 50) {
451
+ const chunk = wanted.slice(i, i + 50);
452
+ let after = 0;
453
+ for (let page = 0;; page++) {
454
+ if (page >= 1000)
455
+ throw new CloudError('server', "the team's reservations did not end after 1000 pages");
456
+ const r = await request(`/api/teams/${encodeURIComponent(teamId)}/placeholders/reservations?bases=${encodeURIComponent(chunk.join(','))}&limit=1000&after=${after}`, { credential, signal });
457
+ if (Array.isArray(r?.reservations))
458
+ rows.push(...r.reservations);
459
+ if (r?.highest && typeof r.highest === 'object')
460
+ highest = { ...highest, ...r.highest };
461
+ if (Array.isArray(r?.truncated))
462
+ truncated.push(...r.truncated);
463
+ if (typeof r?.next !== 'number')
464
+ break;
465
+ after = r.next;
466
+ }
467
+ }
468
+ }
469
+ catch (err) {
470
+ if (err instanceof CloudError && err.status === 404)
471
+ return null;
472
+ if (!(err instanceof CloudError && err.status === 400))
473
+ throw err;
474
+ rows.splice(0, rows.length, ...(await readReservations(credential, teamId, signal)));
475
+ highest = {};
476
+ }
477
+ const sane = (n) => Number.isInteger(n) && n >= 0 && n <= 1e8;
478
+ return {
479
+ reservations: rows.filter((r) => wanted.includes(r?.base)),
480
+ highest: Object.fromEntries(Object.entries(highest).filter(([b, n]) => wanted.includes(b) && sane(n))),
481
+ truncated: truncated.filter((b) => wanted.includes(b)),
482
+ };
483
+ }
484
+ /**
485
+ * Who holds which of the team's numbers: every page. Numbers, kinds and
486
+ * account ids only - restore reads it to leave in place a placeholder whose
487
+ * map was published by someone other than its number's reserver.
488
+ */
489
+ export async function readReservations(credential, teamId, signal) {
490
+ const all = [];
491
+ let after = 0;
492
+ for (let page = 0; page < 1000; page++) {
493
+ const r = await request(`/api/teams/${encodeURIComponent(teamId)}/placeholders/reservations?limit=1000&after=${after}`, { credential, signal });
494
+ all.push(...r.reservations);
495
+ if (r.next === null)
496
+ return all;
497
+ after = r.next;
296
498
  }
297
- return request(`/api/teams/${encodeURIComponent(teamId)}/placeholders/reserve`, { credential, method: 'POST', body: { requests }, signal });
499
+ throw new CloudError('server', "the team's reservations did not end after 1000 pages");
298
500
  }
299
501
  /**
300
502
  * Delete a map in Cloud.
package/dist/cloud.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.js","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud.js","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,12 @@ export type TeamNamespaceSource = () => Promise<{
56
56
  * because the alternative is pretending the number is safe.
57
57
  */
58
58
  reserve?: Reserve | null;
59
+ /**
60
+ * Spec 066: new names are numbered from this checkout's reserved.json -
61
+ * the team's id, or null in a team (or maybe one) whose id is unknown.
62
+ * Undefined: no team numbering (signed out, in no team, an older instance).
63
+ */
64
+ numberingTeam?: string | null;
59
65
  /**
60
66
  * The command is refused, in these words (a whole `veilio: ...` line):
61
67
  * VEILIO_PROJECT names no project the team works in (spec 052 FR-012a).
@@ -68,6 +74,10 @@ export type TeamLayerSource = (missing: readonly string[]) => Promise<{
68
74
  team: TeamLayer | null;
69
75
  note: string | null;
70
76
  refused?: string;
77
+ /** Spec 063: placeholders whose number another member reserved. */
78
+ misattributed?: string[];
79
+ /** Round 4 (D): placeholders above every number the server issued for their kind. */
80
+ unissued?: string[];
71
81
  }>;
72
82
  export declare function runRestore(args: ParsedArgs, io: Io, teamLayer?: TeamLayerSource): Promise<number>;
73
83
  /** Detect-only pass for pre-commit hooks and CI. Never rewrites anything. */
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAUA,OAAO,EAgBL,KAAK,SAAS,EAEf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAK3C,OAAO,EAAgD,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGhG,MAAM,WAAW,EAAE;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7C;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CACnD;AAED;6EAC6E;AAC7E,eAAO,MAAM,OAAO,IAAI,CAAA;AACxB,eAAO,MAAM,aAAa,IAAI,CAAA;AAC9B,eAAO,MAAM,UAAU,IAAI,CAAA;AAiC3B,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,UAAU,CAAC,EAAE,mBAAmB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAgLjB;AAED;;;;;;GAMG;AACH,mFAAmF;AACnF,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAC9C,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KACnC,GAAG,IAAI,CAAA;IACR,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IACxB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,SAAS,MAAM,EAAE,KACvB,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE/E,wBAAsB,UAAU,CAC9B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,SAAS,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,CAAC,CA4GjB;AAED,6EAA6E;AAC7E,wBAAsB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCvE;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBtE;AAED,eAAO,MAAM,IAAI,QAsBhB,CAAA"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAWA,OAAO,EAmBL,KAAK,SAAS,EAGf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAiB3C,OAAO,EAAgD,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGhG,MAAM,WAAW,EAAE;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7C;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CACnD;AAED;6EAC6E;AAC7E,eAAO,MAAM,OAAO,IAAI,CAAA;AACxB,eAAO,MAAM,aAAa,IAAI,CAAA;AAC9B,eAAO,MAAM,UAAU,IAAI,CAAA;AAiC3B,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,UAAU,CAAC,EAAE,mBAAmB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAsNjB;AAED;;;;;;GAMG;AACH,mFAAmF;AACnF,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAC9C,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KACnC,GAAG,IAAI,CAAA;IACR,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IACxB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC;IACpE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB,CAAC,CAAA;AAEF,wBAAsB,UAAU,CAC9B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,SAAS,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,CAAC,CAoJjB;AAED,6EAA6E;AAC7E,wBAAsB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAsCvE;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBtE;AAED,eAAO,MAAM,IAAI,QAsBhB,CAAA"}