@veilio-inc/cli 0.7.1 → 0.9.1

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 (71) hide show
  1. package/README.md +175 -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 +90 -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/guard-hint.d.ts +12 -0
  37. package/dist/guard-hint.d.ts.map +1 -0
  38. package/dist/guard-hint.js +38 -0
  39. package/dist/guard-hint.js.map +1 -0
  40. package/dist/hashed-bases.d.ts +12 -0
  41. package/dist/hashed-bases.d.ts.map +1 -0
  42. package/dist/hashed-bases.js +45 -0
  43. package/dist/hashed-bases.js.map +1 -0
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +9 -1
  46. package/dist/index.js.map +1 -1
  47. package/dist/reservations.d.ts +145 -0
  48. package/dist/reservations.d.ts.map +1 -0
  49. package/dist/reservations.js +348 -0
  50. package/dist/reservations.js.map +1 -0
  51. package/dist/rules-open.d.ts +16 -0
  52. package/dist/rules-open.d.ts.map +1 -0
  53. package/dist/rules-open.js +87 -0
  54. package/dist/rules-open.js.map +1 -0
  55. package/dist/rules.d.ts +20 -2
  56. package/dist/rules.d.ts.map +1 -1
  57. package/dist/rules.js +86 -4
  58. package/dist/rules.js.map +1 -1
  59. package/dist/store.d.ts +3 -0
  60. package/dist/store.d.ts.map +1 -1
  61. package/dist/store.js +19 -1
  62. package/dist/store.js.map +1 -1
  63. package/dist/team-anonymize.d.ts +16 -1
  64. package/dist/team-anonymize.d.ts.map +1 -1
  65. package/dist/team-anonymize.js +39 -13
  66. package/dist/team-anonymize.js.map +1 -1
  67. package/dist/team-namespace.d.ts +59 -4
  68. package/dist/team-namespace.d.ts.map +1 -1
  69. package/dist/team-namespace.js +133 -11
  70. package/dist/team-namespace.js.map +1 -1
  71. package/package.json +8 -5
@@ -1,6 +1,6 @@
1
- import { type TeamNamespaceAnalysis } from '@veilio-inc/engine';
1
+ import { type CryptoKeyLike, type TeamNamespaceAnalysis } from '@veilio-inc/engine';
2
2
  import { type Credential } from './credential.js';
3
- import { type CloudMapList } from './cloud.js';
3
+ import { type CloudMapList, type PlaceholderReservation } from './cloud.js';
4
4
  import { type Env } from './client/project-scope.js';
5
5
  import type { Refusal } from './client/wording.js';
6
6
  export type TeamNamespaceResult =
@@ -13,6 +13,8 @@ export type TeamNamespaceResult =
13
13
  {
14
14
  status: 'team';
15
15
  analysis: TeamNamespaceAnalysis;
16
+ /** Spec 063: placeholders whose number another member reserved (also in analysis.conflicts). */
17
+ misattributed?: string[];
16
18
  conflictDetection: boolean;
17
19
  /**
18
20
  * The team whose namespace this is, for reserving placeholder numbers
@@ -42,14 +44,27 @@ export type TeamNamespaceResult =
42
44
  excluded?: {
43
45
  map: Record<string, string> | null;
44
46
  };
47
+ /** Spec 063: who holds which of the team's numbers, as the read listed
48
+ * them. Absent on an instance that keeps no record. */
49
+ reservations?: PlaceholderReservation[];
50
+ /** Round 4 (D): placeholders numbered outside every run the server
51
+ * issued for their base: no floor, and above the base's highest issued
52
+ * number, left by restore. */
53
+ unvouched?: number;
54
+ /** Round 4 (D): those above the base's highest issued number (also in
55
+ * analysis.conflicts): restore leaves them. */
56
+ unissued?: string[];
45
57
  }
46
58
  /** Nothing to read: signed out, or not in a team. The local namespace is right. */
47
59
  | {
48
60
  status: 'local';
49
61
  }
50
- /** In a team, but no team key on this machine: `veilio team unlock`. */
62
+ /** In a team, but no team key on this machine: `veilio team unlock`.
63
+ * `teamId`: which team, so new names can still be numbered from this
64
+ * checkout's reserved.json (spec 066). */
51
65
  | {
52
66
  status: 'locked';
67
+ teamId?: string;
53
68
  }
54
69
  /** In a team, and the maps could not be read. `reason` says why. */
55
70
  | {
@@ -103,17 +118,57 @@ export declare function resolveTeamNamespace(home: string | undefined, opts: Res
103
118
  status: 'refused';
104
119
  }>>;
105
120
  export declare function resolveTeamNamespace(home?: string, opts?: ResolveOptions): Promise<TeamNamespaceResult>;
121
+ /**
122
+ * Placeholders the team's maps give a name although the member who reserved
123
+ * the number published no map that gives it that name. A number in no
124
+ * reservation (from before spec 063) is not judged: it restores as before.
125
+ */
126
+ export declare function misattributedIn(analysis: {
127
+ namespace: Record<string, string>;
128
+ aliases: Record<string, string>;
129
+ }, entries: readonly {
130
+ owner?: string;
131
+ map: Record<string, string> | null;
132
+ }[], reservations: readonly PlaceholderReservation[],
133
+ /** The team's raw keys: a rule's base is listed under its hash (Cloud audit M1). */
134
+ keys?: readonly Uint8Array[]): string[];
135
+ export { misattributedNote, unissuedNote } from './reservations.js';
136
+ /**
137
+ * Round 4 (D): a team's numbers, judged against the runs the server issued.
138
+ * Only a number inside an issued run of its base floors it (`highest`); a
139
+ * base never reserved keeps its maps' floor up to 10000, the server's own
140
+ * margin, so maps numbered before the team existed still floor its first
141
+ * run. A number outside every run is unvouched, and `beyond` holds those
142
+ * above the base's highest issued number: restore leaves them, as it leaves
143
+ * a disputed one. At or below it, a number from before spec 063 restores as
144
+ * before. (A legacy number above 10000 on a base never reserved floors
145
+ * nothing: teams from before spec 063 exist only on staging.)
146
+ */
147
+ export declare function vouchNumbers(maps: readonly (Record<string, string> | null)[], reservations: readonly PlaceholderReservation[], keys: readonly Uint8Array[],
148
+ /** The server's highest per listed base, when it said: the restore threshold. */
149
+ served?: Record<string, number>): {
150
+ highest: Record<string, number>;
151
+ beyond: string[];
152
+ unvouched: number;
153
+ };
106
154
  /** `"billing" (m-1), m-2` - the names a person recognises, beside the ids they
107
155
  * would type to remove one. Five at most, then a count. */
108
156
  export declare function describeMaps(maps: readonly {
109
157
  id: string;
110
158
  name: string | null;
111
159
  }[]): string;
160
+ /**
161
+ * The team keys this machine has unlocked. Absent, expired, for another
162
+ * account or another team all read the same way: none.
163
+ */
164
+ export declare function heldTeamKeys(credential: Credential, home: string | undefined, teamId: string): Promise<{
165
+ version: number;
166
+ key: CryptoKeyLike;
167
+ }[]>;
112
168
  /**
113
169
  * What a restore says when it needed the team's maps and did not get them -
114
170
  * the same words from `veilio restore` and the MCP's `restore_text`.
115
171
  * `missing`: the placeholders the own map could not explain.
116
172
  */
117
173
  export declare function teamLayerNote(result: TeamNamespaceResult, missing: readonly string[]): string | null;
118
- export {};
119
174
  //# sourceMappingURL=team-namespace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"team-namespace.d.ts","sourceRoot":"","sources":["../src/team-namespace.ts"],"names":[],"mappings":"AAaA,OAAO,EAOL,KAAK,qBAAqB,EAC3B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjE,OAAO,EAKL,KAAK,YAAY,EAElB,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAoC,KAAK,GAAG,EAAE,MAAM,2BAA2B,CAAA;AACtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,MAAM,mBAAmB;AAC7B;;;;;GAKG;AACD;IACE,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,qBAAqB,CAAA;IAC/B,iBAAiB,EAAE,OAAO,CAAA;IAC1B;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB;;;;;OAKG;IACH,UAAU,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EAAE,CAAA;IACjD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;KAAE,CAAA;CAClD;AACH,mFAAmF;GACjF;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE;AACrB,wEAAwE;GACtE;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE;AACtB,oEAAoE;GAClE;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAC3C;;;;;GAKG;GACD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAA;AA2B3C,KAAK,cAAc,GAAG;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,oEAAoE;IACpE,GAAG,CAAC,EAAE,GAAG,CAAA;IACT;;;;;OAKG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,oHAAoH;AACpH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE,cAAc,GAAG;IAAE,UAAU,EAAE,UAAU,CAAA;CAAE,GAChD,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC,CAAA;AAC/D,wBAAgB,oBAAoB,CAClC,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,cAAc,GACpB,OAAO,CAAC,mBAAmB,CAAC,CAAA;AAmH/B;4DAC4D;AAC5D,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,GAAG,MAAM,CAGzF;AAoGD;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,MAAM,GAAG,IAAI,CAcf"}
1
+ {"version":3,"file":"team-namespace.d.ts","sourceRoot":"","sources":["../src/team-namespace.ts"],"names":[],"mappings":"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"}
@@ -10,9 +10,11 @@
10
10
  // caller says which: a coding agent or a terminal that silently used the local
11
11
  // namespace looked exactly like one that used the team's, until a teammate's
12
12
  // placeholders came back unrestored (Constitution V).
13
- import { analyzeTeamNamespace, decryptTeamMapWithAny, importTeamKey, } from '@veilio-inc/engine';
14
- import { readCredential } from './credential.js';
15
- import { CloudError, getMap, getTeamEnvelopes, listMaps, } from './cloud.js';
13
+ import { servedAs, teamKeyBytes, wireBase } from './hashed-bases.js';
14
+ import { analyzeTeamNamespace, decryptTeamMapWithAny, importTeamKey, isEngineBase, isSaneBlock, MAX_PLACEHOLDER_NUMBER, LOCAL_PREFIX, } from '@veilio-inc/engine';
15
+ import { readCredential, removeTeamRecord, writeTeamRecord } from './credential.js';
16
+ import { printable } from './reservations.js';
17
+ import { CloudError, getMap, getTeamEnvelopes, readReservationsFor, listMaps, } from './cloud.js';
16
18
  import { readTeamUnlock } from './team-unlock.js';
17
19
  import { projectOverride, resolveOverride } from './client/project-scope.js';
18
20
  /**
@@ -81,10 +83,11 @@ export async function resolveTeamNamespace(home, opts = {}) {
81
83
  clearTimeout(timer);
82
84
  }
83
85
  }
86
+ /** The reason, shown on a terminal and to a model: never raw server text. */
84
87
  function describe(err) {
85
88
  if (err instanceof CloudError)
86
- return `${err.message}${err.status ? ` (HTTP ${err.status})` : ''}`;
87
- return err instanceof Error ? err.message : String(err);
89
+ return printable(`${err.message}${err.status ? ` (HTTP ${err.status})` : ''}`);
90
+ return printable(err instanceof Error ? err.message : String(err));
88
91
  }
89
92
  async function attempt(stored, override, home, signal, opts) {
90
93
  const { excludeMapId, list: given } = opts;
@@ -103,20 +106,34 @@ async function attempt(stored, override, home, signal, opts) {
103
106
  // An older self-hosted Cloud may still merge server-side; that answer needs no
104
107
  // key. It carries no aliases or conflicts - it predates both.
105
108
  if (list.teamNamespace) {
109
+ // Dropped as analyzeTeamNamespace drops them (spec 066, code review).
110
+ const all = Object.entries(list.teamNamespace);
111
+ const namespace = Object.fromEntries(all.filter(([p]) => !p.startsWith(LOCAL_PREFIX)));
106
112
  return {
107
113
  status: 'team',
108
- analysis: { namespace: list.teamNamespace, aliases: {}, conflicts: {}, highest: {} },
114
+ analysis: {
115
+ namespace,
116
+ aliases: {},
117
+ conflicts: {},
118
+ highest: {},
119
+ localDropped: all.length - Object.keys(namespace).length,
120
+ },
109
121
  conflictDetection: false,
110
122
  teamId: null,
111
123
  unreadable: [],
112
124
  };
113
125
  }
114
126
  const teamId = list.team?.id;
127
+ // The team last seen, for a run that cannot reach Cloud (spec 066 FR-001).
128
+ if (teamId)
129
+ writeTeamRecord({ instance: credential.instance, account: credential.account, teamId }, home);
130
+ else
131
+ removeTeamRecord(home);
115
132
  if (!teamId)
116
133
  return { status: 'local' };
117
134
  const keys = await heldTeamKeys(credential, home, teamId);
118
135
  if (keys.length === 0)
119
- return { status: 'locked' };
136
+ return { status: 'locked', teamId };
120
137
  const scoped = teamScopedMaps(list);
121
138
  const read = await readTeamEntries(credential, keys, scoped, signal);
122
139
  const names = new Map(scoped.map((m) => [m.id, m.name]));
@@ -139,15 +156,115 @@ async function attempt(stored, override, home, signal, opts) {
139
156
  reason: `none of the team maps opened with the unlocked key: ${describeMaps(unreadable)}`,
140
157
  };
141
158
  }
159
+ const analysis = analyzeTeamNamespace(entries);
160
+ // Spec 063 (research R5 rule 3): an entry whose number another member
161
+ // reserved was not numbered by the map that publishes it. It joins the
162
+ // disputed set - scrub never emits it, a publish treats it as taken, restore
163
+ // leaves it and names it - rather than be restored as a guess.
164
+ const misattributed = read.reservations
165
+ ? misattributedIn(analysis, kept, read.reservations, teamKeyBytes(credential, home, teamId))
166
+ : [];
167
+ for (const p of misattributed)
168
+ analysis.conflicts[p] = Math.max(analysis.conflicts[p] ?? 0, 2);
169
+ const teamKeys = teamKeyBytes(credential, home, teamId);
170
+ let vouched = read.reservations
171
+ ? vouchNumbers(kept.map((e) => e.map), read.reservations, teamKeys)
172
+ : null;
173
+ // Round 4 (D): a number above every run listed here is judged against the
174
+ // server's own `highest` for its base (the counter or the highest run end,
175
+ // never cut short): asked only for those bases, only when there are some.
176
+ if (vouched?.beyond.length) {
177
+ const bases = [...new Set(vouched.beyond.map((p) => NUMBERED.exec(p)[1]))];
178
+ const names = bases.flatMap((b) => isEngineBase(b) ? [b] : teamKeys.map((k) => wireBase(b, k)));
179
+ const listed = await readReservationsFor(credential, teamId, names, signal).catch(() => null);
180
+ if (listed)
181
+ vouched = vouchNumbers(kept.map((e) => e.map), [...read.reservations, ...listed.reservations], teamKeys, listed.highest);
182
+ }
183
+ if (vouched) {
184
+ analysis.highest = vouched.highest;
185
+ for (const p of vouched.beyond)
186
+ analysis.conflicts[p] = Math.max(analysis.conflicts[p] ?? 0, 2);
187
+ }
142
188
  return {
143
189
  status: 'team',
144
- analysis: analyzeTeamNamespace(entries),
190
+ analysis,
191
+ misattributed,
192
+ ...(read.reservations ? { reservations: read.reservations } : {}),
193
+ ...(vouched?.unvouched ? { unvouched: vouched.unvouched } : {}),
194
+ ...(vouched?.beyond.length ? { unissued: vouched.beyond } : {}),
145
195
  conflictDetection: true,
146
196
  teamId,
147
197
  unreadable,
148
198
  ...(excludedEntry ? { excluded: { map: excludedEntry.map } } : {}),
149
199
  };
150
200
  }
201
+ const NUMBERED = /^(__[A-Z][A-Z0-9_]*__)(\d+)$/;
202
+ /**
203
+ * Placeholders the team's maps give a name although the member who reserved
204
+ * the number published no map that gives it that name. A number in no
205
+ * reservation (from before spec 063) is not judged: it restores as before.
206
+ */
207
+ export function misattributedIn(analysis, entries, reservations,
208
+ /** The team's raw keys: a rule's base is listed under its hash (Cloud audit M1). */
209
+ keys = []) {
210
+ const out = [];
211
+ const named = { ...analysis.aliases, ...analysis.namespace };
212
+ for (const [p, name] of Object.entries(named)) {
213
+ const [, base = '', digits = ''] = NUMBERED.exec(p) ?? [];
214
+ if (!base)
215
+ continue;
216
+ const n = Number(digits);
217
+ const reserver = reservations.find((r) => servedAs(r.base, base, keys) && n >= r.start && n <= r.end)?.member;
218
+ if (!reserver)
219
+ continue;
220
+ if (!entries.some((e) => e.owner === reserver && e.map?.[p] === name))
221
+ out.push(p);
222
+ }
223
+ return out;
224
+ }
225
+ export { misattributedNote, unissuedNote } from './reservations.js';
226
+ /**
227
+ * Round 4 (D): a team's numbers, judged against the runs the server issued.
228
+ * Only a number inside an issued run of its base floors it (`highest`); a
229
+ * base never reserved keeps its maps' floor up to 10000, the server's own
230
+ * margin, so maps numbered before the team existed still floor its first
231
+ * run. A number outside every run is unvouched, and `beyond` holds those
232
+ * above the base's highest issued number: restore leaves them, as it leaves
233
+ * a disputed one. At or below it, a number from before spec 063 restores as
234
+ * before. (A legacy number above 10000 on a base never reserved floors
235
+ * nothing: teams from before spec 063 exist only on staging.)
236
+ */
237
+ export function vouchNumbers(maps, reservations, keys,
238
+ /** The server's highest per listed base, when it said: the restore threshold. */
239
+ served = {}) {
240
+ const names = (base) => (isEngineBase(base) ? [base] : keys.map((k) => wireBase(base, k)));
241
+ const runs = (base) => reservations.filter((r) => isSaneBlock(r) && names(base).includes(r.base));
242
+ const highest = {};
243
+ const beyond = new Set();
244
+ let unvouched = 0;
245
+ const seen = new Set();
246
+ for (const map of maps)
247
+ for (const p of Object.keys(map ?? {})) {
248
+ const m = NUMBERED.exec(p);
249
+ if (!m || seen.has(p))
250
+ continue;
251
+ seen.add(p);
252
+ const [, base = '', digits = ''] = m;
253
+ const n = Number(digits);
254
+ if (n > MAX_PLACEHOLDER_NUMBER)
255
+ continue;
256
+ const held = runs(base);
257
+ const top = Math.max(0, ...held.map((r) => r.end), ...names(base).map((b) => served[b] ?? 0));
258
+ const inside = held.some((r) => n >= r.start && n <= r.end);
259
+ if (!inside)
260
+ unvouched++;
261
+ if (inside || (held.length === 0 && n <= 10_000))
262
+ highest[base] = Math.max(highest[base] ?? 0, n);
263
+ if (!inside && top > 0 && n > top)
264
+ beyond.add(p);
265
+ }
266
+ return { highest, beyond: [...beyond], unvouched };
267
+ }
151
268
  /** `"billing" (m-1), m-2` - the names a person recognises, beside the ids they
152
269
  * would type to remove one. Five at most, then a count. */
153
270
  export function describeMaps(maps) {
@@ -163,7 +280,7 @@ function teamScopedMaps(list) {
163
280
  * The team keys this machine has unlocked. Absent, expired, for another
164
281
  * account or another team all read the same way: none.
165
282
  */
166
- async function heldTeamKeys(credential, home, teamId) {
283
+ export async function heldTeamKeys(credential, home, teamId) {
167
284
  const unlock = readTeamUnlock({ instance: credential.instance, account: credential.account }, home);
168
285
  if (!unlock || unlock.teamId !== teamId)
169
286
  return [];
@@ -207,17 +324,22 @@ async function readTeamEntries(credential, keys, teamScoped, signal) {
207
324
  return {
208
325
  id: row.id,
209
326
  createdAt: row.created_at,
327
+ owner: row.owner_id,
210
328
  map: await decryptTeamMapWithAny(keys, envelope),
211
329
  };
212
330
  }
213
331
  catch {
214
332
  // A version this member was never granted: skipped, not fatal - but
215
333
  // named, by the caller, wherever it matters (FR-018).
216
- return { id: row.id, createdAt: row.created_at, map: null };
334
+ return { id: row.id, createdAt: row.created_at, owner: row.owner_id, map: null };
217
335
  }
218
336
  }));
219
337
  // The server could not peel its own layer off these: also unreadable.
220
- return { entries, unreadable: Array.isArray(bulk.unreadable) ? bulk.unreadable : [] };
338
+ return {
339
+ entries,
340
+ unreadable: Array.isArray(bulk.unreadable) ? bulk.unreadable : [],
341
+ ...(Array.isArray(bulk.reservations) ? { reservations: bulk.reservations } : {}),
342
+ };
221
343
  }
222
344
  async function openTeamMap(credential, summary, keys, signal) {
223
345
  const id = summary.id;
@@ -1 +1 @@
1
- {"version":3,"file":"team-namespace.js","sourceRoot":"","sources":["../src/team-namespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"team-namespace.js","sourceRoot":"","sources":["../src/team-namespace.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@veilio-inc/cli",
3
- "version": "0.7.1",
4
- "description": "Anonymize identifiers and redact credentials in source code before it reaches an LLM — from the terminal, a pipe, or a pre-commit hook.",
3
+ "version": "0.9.1",
4
+ "description": "Anonymize identifiers and redact credentials in source code before it reaches an LLM \u2014 from the terminal, a pipe, or a pre-commit hook.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "veilio": "dist/index.js"
@@ -28,12 +28,12 @@
28
28
  ],
29
29
  "license": "SEE LICENSE IN LICENSE",
30
30
  "dependencies": {
31
- "@veilio-inc/engine": "^1.13.0"
31
+ "@veilio-inc/engine": "^1.16.0"
32
32
  },
33
33
  "scripts": {
34
34
  "build": "tsc",
35
35
  "clean": "rm -rf dist",
36
- "prepublishOnly": "npm run clean && npm run typecheck && npm run build && npm run test",
36
+ "prepublishOnly": "npm run clean && npm run build && npm run typecheck && npm run test",
37
37
  "typecheck": "tsc --noEmit -p tsconfig.typecheck.json",
38
38
  "test": "vitest run",
39
39
  "test:coverage": "vitest run --coverage"
@@ -51,9 +51,12 @@
51
51
  "./team-unlock": "./dist/team-unlock.js",
52
52
  "./team-namespace": "./dist/team-namespace.js",
53
53
  "./rules": "./dist/rules.js",
54
+ "./rules-open": "./dist/rules-open.js",
54
55
  "./team-anonymize": "./dist/team-anonymize.js",
55
56
  "./third-party": "./dist/third-party.js",
56
- "./client": "./dist/client/index.js"
57
+ "./client": "./dist/client/index.js",
58
+ "./reservations": "./dist/reservations.js",
59
+ "./guard-hint": "./dist/guard-hint.js"
57
60
  },
58
61
  "repository": {
59
62
  "type": "git",