@indigoai-us/hq-cloud 6.14.27 → 6.14.28
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/dist/bin/sync-runner-company.d.ts.map +1 -1
- package/dist/bin/sync-runner-company.js +16 -5
- package/dist/bin/sync-runner-company.js.map +1 -1
- package/dist/bin/sync-runner.test.js +11 -1
- package/dist/bin/sync-runner.test.js.map +1 -1
- package/dist/personal-vault.d.ts +21 -4
- package/dist/personal-vault.d.ts.map +1 -1
- package/dist/personal-vault.js +63 -4
- package/dist/personal-vault.js.map +1 -1
- package/dist/personal-vault.test.d.ts +3 -2
- package/dist/personal-vault.test.d.ts.map +1 -1
- package/dist/personal-vault.test.js +36 -3
- package/dist/personal-vault.test.js.map +1 -1
- package/package.json +1 -1
- package/src/bin/sync-runner-company.ts +19 -5
- package/src/bin/sync-runner.test.ts +17 -1
- package/src/personal-vault.test.ts +41 -2
- package/src/personal-vault.ts +63 -4
package/dist/personal-vault.d.ts
CHANGED
|
@@ -72,7 +72,8 @@ export interface PersonalVaultOptions {
|
|
|
72
72
|
* `PERSONAL_VAULT_EXCLUDED_TOP_LEVEL`.
|
|
73
73
|
* 2. Every local (non-cloud) `companies/{slug}/` subdir, after excluding
|
|
74
74
|
* (a) `_template`, (b) slugs already in `opts.teamSyncedSlugs`
|
|
75
|
-
* (cloud-backed — they sync to their own team bucket),
|
|
75
|
+
* (cloud-backed — they sync to their own team bucket), (c) slugs with
|
|
76
|
+
* `cloud_uid: cmp_*` in `companies/manifest.yaml`, and (d) any
|
|
76
77
|
* subdir explicitly marked `cloud: true` in its `company.yaml`.
|
|
77
78
|
* A company with no `company.yaml` (or one without a `cloud:` marker)
|
|
78
79
|
* is included — local companies sync to the personal vault by default.
|
|
@@ -202,14 +203,30 @@ export declare function computeSessionLogsSyncPaths(hqRoot: string): string[];
|
|
|
202
203
|
* (currently just `_template`).
|
|
203
204
|
* 3. The slug is NOT in `teamSyncedSlugs` (membership-backed slugs sync
|
|
204
205
|
* to their own bucket and must not be double-written).
|
|
205
|
-
* 4.
|
|
206
|
+
* 4. The slug is NOT listed with a `cloud_uid: cmp_*` in
|
|
207
|
+
* `companies/manifest.yaml`. Full-HQ agent boxes often run
|
|
208
|
+
* `--personal` alone (no company fanout targets), so
|
|
209
|
+
* `teamSyncedSlugs` is empty even though indigo (etc.) is
|
|
210
|
+
* cloud-backed; without this check the multi-GB company tree is
|
|
211
|
+
* re-mirrored into the agent personal vault every ritual and
|
|
212
|
+
* times out the 180s personal push.
|
|
213
|
+
* 5. `companies/{slug}/company.yaml` does NOT contain an explicit
|
|
206
214
|
* `cloud: true` line. Local companies sync to the personal vault by
|
|
207
215
|
* default, so a missing/markerless `company.yaml` is INCLUDED; only an
|
|
208
216
|
* explicit `cloud: true` marker opts the directory OUT (belt-and-braces
|
|
209
|
-
* with `teamSyncedSlugs` for a company designated
|
|
210
|
-
* its membership has resolved).
|
|
217
|
+
* with `teamSyncedSlugs` / manifest `cloud_uid` for a company designated
|
|
218
|
+
* cloud-backed before its membership has resolved).
|
|
211
219
|
*
|
|
212
220
|
* Returns absolute paths.
|
|
213
221
|
*/
|
|
214
222
|
export declare function computePersonalCompanySubdirs(hqRoot: string, teamSyncedSlugs?: ReadonlySet<string>): string[];
|
|
223
|
+
/**
|
|
224
|
+
* Slugs whose `companies/manifest.yaml` entry carries a `cloud_uid: cmp_*`.
|
|
225
|
+
* These are cloud-backed team companies and must not personal-vault mirror.
|
|
226
|
+
*
|
|
227
|
+
* Lightweight line parse (no YAML dep): fail-open on missing/unreadable
|
|
228
|
+
* manifest → empty set → companies stay eligible for personal fallback.
|
|
229
|
+
* Only `cmp_*` uids count (same rule as company-resolver / telemetry).
|
|
230
|
+
*/
|
|
231
|
+
export declare function readCloudBackedSlugsFromManifest(hqRoot: string): Set<string>;
|
|
215
232
|
//# sourceMappingURL=personal-vault.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personal-vault.d.ts","sourceRoot":"","sources":["../src/personal-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAMH,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAK9D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,EAAE,SAAS,MAAM,EAElE,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC;AAED
|
|
1
|
+
{"version":3,"file":"personal-vault.d.ts","sourceRoot":"","sources":["../src/personal-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAMH,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAK9D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,EAAE,SAAS,MAAM,EAElE,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,4BAA4B,CAAC;AAErE;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAU7D;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAepE;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,oBAAyB,GAC9B,MAAM,EAAE,CAwCV;AAED;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,mCAAmC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAoDtE;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAElD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ/D;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,4BAA4B,CAAC;AAE/D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAQpE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,eAAe,GAAE,WAAW,CAAC,MAAM,CAAa,GAC/C,MAAM,EAAE,CA8BV;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAmC5E"}
|
package/dist/personal-vault.js
CHANGED
|
@@ -70,7 +70,8 @@ export const PERSONAL_VAULT_COMPANY_EXCLUDED_SLUGS = [
|
|
|
70
70
|
* `PERSONAL_VAULT_EXCLUDED_TOP_LEVEL`.
|
|
71
71
|
* 2. Every local (non-cloud) `companies/{slug}/` subdir, after excluding
|
|
72
72
|
* (a) `_template`, (b) slugs already in `opts.teamSyncedSlugs`
|
|
73
|
-
* (cloud-backed — they sync to their own team bucket),
|
|
73
|
+
* (cloud-backed — they sync to their own team bucket), (c) slugs with
|
|
74
|
+
* `cloud_uid: cmp_*` in `companies/manifest.yaml`, and (d) any
|
|
74
75
|
* subdir explicitly marked `cloud: true` in its `company.yaml`.
|
|
75
76
|
* A company with no `company.yaml` (or one without a `cloud:` marker)
|
|
76
77
|
* is included — local companies sync to the personal vault by default.
|
|
@@ -337,12 +338,19 @@ export function computeSessionLogsSyncPaths(hqRoot) {
|
|
|
337
338
|
* (currently just `_template`).
|
|
338
339
|
* 3. The slug is NOT in `teamSyncedSlugs` (membership-backed slugs sync
|
|
339
340
|
* to their own bucket and must not be double-written).
|
|
340
|
-
* 4.
|
|
341
|
+
* 4. The slug is NOT listed with a `cloud_uid: cmp_*` in
|
|
342
|
+
* `companies/manifest.yaml`. Full-HQ agent boxes often run
|
|
343
|
+
* `--personal` alone (no company fanout targets), so
|
|
344
|
+
* `teamSyncedSlugs` is empty even though indigo (etc.) is
|
|
345
|
+
* cloud-backed; without this check the multi-GB company tree is
|
|
346
|
+
* re-mirrored into the agent personal vault every ritual and
|
|
347
|
+
* times out the 180s personal push.
|
|
348
|
+
* 5. `companies/{slug}/company.yaml` does NOT contain an explicit
|
|
341
349
|
* `cloud: true` line. Local companies sync to the personal vault by
|
|
342
350
|
* default, so a missing/markerless `company.yaml` is INCLUDED; only an
|
|
343
351
|
* explicit `cloud: true` marker opts the directory OUT (belt-and-braces
|
|
344
|
-
* with `teamSyncedSlugs` for a company designated
|
|
345
|
-
* its membership has resolved).
|
|
352
|
+
* with `teamSyncedSlugs` / manifest `cloud_uid` for a company designated
|
|
353
|
+
* cloud-backed before its membership has resolved).
|
|
346
354
|
*
|
|
347
355
|
* Returns absolute paths.
|
|
348
356
|
*/
|
|
@@ -355,12 +363,19 @@ export function computePersonalCompanySubdirs(hqRoot, teamSyncedSlugs = new Set(
|
|
|
355
363
|
catch {
|
|
356
364
|
return [];
|
|
357
365
|
}
|
|
366
|
+
// Manifest cloud_uid is the durable routing signal for cloud-backed
|
|
367
|
+
// companies. Prefer it over relying solely on runner membership fanout
|
|
368
|
+
// (empty for --personal-only agent ritual) or company.yaml (often missing
|
|
369
|
+
// on full-HQ agent boxes that never ran /designate-team locally).
|
|
370
|
+
const cloudManifestSlugs = readCloudBackedSlugsFromManifest(hqRoot);
|
|
358
371
|
const eligible = [];
|
|
359
372
|
for (const slug of slugs) {
|
|
360
373
|
if (PERSONAL_VAULT_COMPANY_EXCLUDED_SLUGS.includes(slug))
|
|
361
374
|
continue;
|
|
362
375
|
if (teamSyncedSlugs.has(slug))
|
|
363
376
|
continue;
|
|
377
|
+
if (cloudManifestSlugs.has(slug))
|
|
378
|
+
continue;
|
|
364
379
|
const subdir = path.join(companiesRoot, slug);
|
|
365
380
|
let isDir = false;
|
|
366
381
|
try {
|
|
@@ -377,6 +392,50 @@ export function computePersonalCompanySubdirs(hqRoot, teamSyncedSlugs = new Set(
|
|
|
377
392
|
}
|
|
378
393
|
return eligible;
|
|
379
394
|
}
|
|
395
|
+
/**
|
|
396
|
+
* Slugs whose `companies/manifest.yaml` entry carries a `cloud_uid: cmp_*`.
|
|
397
|
+
* These are cloud-backed team companies and must not personal-vault mirror.
|
|
398
|
+
*
|
|
399
|
+
* Lightweight line parse (no YAML dep): fail-open on missing/unreadable
|
|
400
|
+
* manifest → empty set → companies stay eligible for personal fallback.
|
|
401
|
+
* Only `cmp_*` uids count (same rule as company-resolver / telemetry).
|
|
402
|
+
*/
|
|
403
|
+
export function readCloudBackedSlugsFromManifest(hqRoot) {
|
|
404
|
+
const manifestPath = path.join(hqRoot, "companies", "manifest.yaml");
|
|
405
|
+
let text;
|
|
406
|
+
try {
|
|
407
|
+
text = fs.readFileSync(manifestPath, "utf8");
|
|
408
|
+
}
|
|
409
|
+
catch {
|
|
410
|
+
return new Set();
|
|
411
|
+
}
|
|
412
|
+
const out = new Set();
|
|
413
|
+
let currentSlug = null;
|
|
414
|
+
let inCompanies = false;
|
|
415
|
+
for (const line of text.split(/\r?\n/)) {
|
|
416
|
+
// Top-level key (no indent). Only track entries under `companies:`.
|
|
417
|
+
if (/^[A-Za-z0-9_.-]+:\s*(?:#.*)?$/.test(line)) {
|
|
418
|
+
inCompanies = /^companies:\s*(?:#.*)?$/.test(line);
|
|
419
|
+
currentSlug = null;
|
|
420
|
+
continue;
|
|
421
|
+
}
|
|
422
|
+
if (!inCompanies)
|
|
423
|
+
continue;
|
|
424
|
+
// Two-space indent: company slug under companies:
|
|
425
|
+
const slugMatch = /^ {2}([A-Za-z0-9][A-Za-z0-9_-]*):\s*(?:#.*)?$/.exec(line);
|
|
426
|
+
if (slugMatch) {
|
|
427
|
+
currentSlug = slugMatch[1];
|
|
428
|
+
continue;
|
|
429
|
+
}
|
|
430
|
+
if (currentSlug &&
|
|
431
|
+
/^\s{2,}cloud_uid:\s*cmp_[A-Za-z0-9]+\b/.test(line)) {
|
|
432
|
+
out.add(currentSlug);
|
|
433
|
+
// Keep currentSlug so a later key on the same company is fine; next
|
|
434
|
+
// sibling slug line will replace it.
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
return out;
|
|
438
|
+
}
|
|
380
439
|
/**
|
|
381
440
|
* True iff `{subdir}/company.yaml` exists and contains an explicit
|
|
382
441
|
* top-level `cloud: true` line — the marker `/designate-team` writes when a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personal-vault.js","sourceRoot":"","sources":["../src/personal-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAE/E,MAAM,CAAC,MAAM,iCAAiC,GAAsB;IAClE,MAAM;IACN,WAAW;IACX,OAAO;IACP,WAAW;CACZ,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAsB;IACtE,WAAW;CACZ,CAAC;AAeF
|
|
1
|
+
{"version":3,"file":"personal-vault.js","sourceRoot":"","sources":["../src/personal-vault.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* disk + caller-supplied option sets, so we exercise them against tmp
|
|
7
7
|
* directories rather than mocking fs. Local (non-cloud) companies sync to
|
|
8
8
|
* the personal vault by DEFAULT: a missing/markerless `company.yaml` is
|
|
9
|
-
* INCLUDED; only an explicit `cloud: true` marker
|
|
10
|
-
* `teamSyncedSlugs
|
|
9
|
+
* INCLUDED; only an explicit `cloud: true` marker, membership via
|
|
10
|
+
* `teamSyncedSlugs`, or a `cloud_uid: cmp_*` entry in
|
|
11
|
+
* `companies/manifest.yaml` opts a company out.
|
|
11
12
|
*
|
|
12
13
|
* The sync-runner-level integration (team-synced slug derivation,
|
|
13
14
|
* decommission of cloud-promoted companies, end-to-end share() invocation)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personal-vault.test.d.ts","sourceRoot":"","sources":["../src/personal-vault.test.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"personal-vault.test.d.ts","sourceRoot":"","sources":["../src/personal-vault.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* disk + caller-supplied option sets, so we exercise them against tmp
|
|
7
7
|
* directories rather than mocking fs. Local (non-cloud) companies sync to
|
|
8
8
|
* the personal vault by DEFAULT: a missing/markerless `company.yaml` is
|
|
9
|
-
* INCLUDED; only an explicit `cloud: true` marker
|
|
10
|
-
* `teamSyncedSlugs
|
|
9
|
+
* INCLUDED; only an explicit `cloud: true` marker, membership via
|
|
10
|
+
* `teamSyncedSlugs`, or a `cloud_uid: cmp_*` entry in
|
|
11
|
+
* `companies/manifest.yaml` opts a company out.
|
|
11
12
|
*
|
|
12
13
|
* The sync-runner-level integration (team-synced slug derivation,
|
|
13
14
|
* decommission of cloud-promoted companies, end-to-end share() invocation)
|
|
@@ -17,7 +18,7 @@ import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
|
17
18
|
import * as fs from "fs";
|
|
18
19
|
import * as os from "os";
|
|
19
20
|
import * as path from "path";
|
|
20
|
-
import { computeContinuityPointerPaths, computePersonalCompanySubdirs, computePersonalVaultPaths, CONTINUITY_POINTER_REL, computeAgencySyncPaths, AGENCY_SYNC_REL, computeSessionLogsSyncPaths, SESSION_LOGS_SYNC_REL, PERSONAL_VAULT_COMPANY_EXCLUDED_SLUGS, PERSONAL_VAULT_EXCLUDED_TOP_LEVEL, isPersonalVaultDeletionExcluded, } from "./personal-vault.js";
|
|
21
|
+
import { computeContinuityPointerPaths, computePersonalCompanySubdirs, computePersonalVaultPaths, readCloudBackedSlugsFromManifest, CONTINUITY_POINTER_REL, computeAgencySyncPaths, AGENCY_SYNC_REL, computeSessionLogsSyncPaths, SESSION_LOGS_SYNC_REL, PERSONAL_VAULT_COMPANY_EXCLUDED_SLUGS, PERSONAL_VAULT_EXCLUDED_TOP_LEVEL, isPersonalVaultDeletionExcluded, } from "./personal-vault.js";
|
|
21
22
|
describe("personal-vault helpers", () => {
|
|
22
23
|
let hqRoot;
|
|
23
24
|
beforeEach(() => {
|
|
@@ -154,6 +155,38 @@ describe("personal-vault helpers", () => {
|
|
|
154
155
|
writeCompany("team-acme", null);
|
|
155
156
|
expect(rel(computePersonalCompanySubdirs(hqRoot, new Set(["team-acme"])))).toEqual([path.join("companies", "free")]);
|
|
156
157
|
});
|
|
158
|
+
// Manifest cloud_uid is the durable cloud-backed signal when the runner
|
|
159
|
+
// has no membership fanout (agent `--personal` ritual). Without this,
|
|
160
|
+
// multi-GB team trees re-enter the personal vault every cycle.
|
|
161
|
+
it("filter: skips slugs with cloud_uid in companies/manifest.yaml", () => {
|
|
162
|
+
writeCompany("local-only", null);
|
|
163
|
+
writeCompany("indigo", null); // no company.yaml cloud:true
|
|
164
|
+
fs.mkdirSync(path.join(hqRoot, "companies"), { recursive: true });
|
|
165
|
+
fs.writeFileSync(path.join(hqRoot, "companies", "manifest.yaml"), [
|
|
166
|
+
"companies:",
|
|
167
|
+
" indigo:",
|
|
168
|
+
" name: Indigo",
|
|
169
|
+
" cloud_uid: cmp_01KQ2RYAHXHDPCTY9GPQPTH3DG",
|
|
170
|
+
" bucket_name: hq-vault-cmp-01kq2ryahxhdpcty9gpqpth3dg",
|
|
171
|
+
" local-only:",
|
|
172
|
+
" name: Local Only",
|
|
173
|
+
"",
|
|
174
|
+
].join("\n"));
|
|
175
|
+
expect(rel(computePersonalCompanySubdirs(hqRoot))).toEqual([
|
|
176
|
+
path.join("companies", "local-only"),
|
|
177
|
+
]);
|
|
178
|
+
expect([...readCloudBackedSlugsFromManifest(hqRoot)].sort()).toEqual([
|
|
179
|
+
"indigo",
|
|
180
|
+
]);
|
|
181
|
+
});
|
|
182
|
+
it("filter: missing/unreadable manifest fails open (local companies still included)", () => {
|
|
183
|
+
writeCompany("foo", null);
|
|
184
|
+
// no companies/manifest.yaml
|
|
185
|
+
expect(rel(computePersonalCompanySubdirs(hqRoot))).toEqual([
|
|
186
|
+
path.join("companies", "foo"),
|
|
187
|
+
]);
|
|
188
|
+
expect(readCloudBackedSlugsFromManifest(hqRoot).size).toBe(0);
|
|
189
|
+
});
|
|
157
190
|
it("filter: skips stray files under companies/ (only directories considered)", () => {
|
|
158
191
|
// Hypothetical: someone drops a README.md at companies/. Should not
|
|
159
192
|
// crash, should not be enumerated as a company subdir.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personal-vault.test.js","sourceRoot":"","sources":["../src/personal-vault.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"personal-vault.test.js","sourceRoot":"","sources":["../src/personal-vault.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import * as path from "path";
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
computePersonalVaultPaths,
|
|
4
|
+
readCloudBackedSlugsFromManifest,
|
|
5
|
+
} from "../personal-vault.js";
|
|
3
6
|
import type { SyncOptions, SyncProgressEvent, SyncResult } from "../cli/sync.js";
|
|
4
7
|
import type { ShareOptions, ShareResult } from "../cli/share.js";
|
|
5
8
|
import type { ConflictStrategy } from "../cli/conflict.js";
|
|
@@ -223,10 +226,16 @@ export async function executeCompanyFanout(options: {
|
|
|
223
226
|
changedPaths: [],
|
|
224
227
|
};
|
|
225
228
|
|
|
226
|
-
// Local (non-cloud) companies always sync to the personal vault.
|
|
227
|
-
//
|
|
228
|
-
//
|
|
229
|
-
//
|
|
229
|
+
// Local (non-cloud) companies always sync to the personal vault.
|
|
230
|
+
// Cloud-backed signals (union):
|
|
231
|
+
// 1. Membership fanout: every non-personal target in the run plan
|
|
232
|
+
// is a company the operator has an active Membership for.
|
|
233
|
+
// 2. companies/manifest.yaml cloud_uid: full-HQ agent boxes often
|
|
234
|
+
// run `--personal` alone (no company fanout), so (1) is empty
|
|
235
|
+
// even when indigo is cloud-backed. Manifest cloud_uid is the
|
|
236
|
+
// durable routing signal — exclude + decommission those slugs
|
|
237
|
+
// so multi-GB team trees never re-enter the agent personal vault.
|
|
238
|
+
// Those slugs are excluded from the personal push (no double-
|
|
230
239
|
// bucketing) and decommissioned from the personal vault if a stale
|
|
231
240
|
// pre-promotion copy lingers — this is how a company "becoming
|
|
232
241
|
// cloud-true" is handled.
|
|
@@ -235,6 +244,11 @@ export async function executeCompanyFanout(options: {
|
|
|
235
244
|
.filter((p) => p.personalMode !== true)
|
|
236
245
|
.map((p) => p.slug),
|
|
237
246
|
);
|
|
247
|
+
if (target.personalMode === true) {
|
|
248
|
+
for (const slug of readCloudBackedSlugsFromManifest(options.hqRoot)) {
|
|
249
|
+
teamSyncedSlugs.add(slug);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
238
252
|
|
|
239
253
|
const scope: PullScope =
|
|
240
254
|
target.personalMode === true
|
|
@@ -3493,9 +3493,21 @@ describe("personal slot fanout", () => {
|
|
|
3493
3493
|
//
|
|
3494
3494
|
// Default direction for runRunner is "pull" so this test exercises
|
|
3495
3495
|
// the pull call without needing --direction.
|
|
3496
|
+
//
|
|
3497
|
+
// Use an isolated --hq-root so ambient HQ manifests (with cloud_uid
|
|
3498
|
+
// slugs) do not bleed into teamSyncedSlugs via
|
|
3499
|
+
// readCloudBackedSlugsFromManifest — membership fanout alone must
|
|
3500
|
+
// still produce acme+beta.
|
|
3496
3501
|
vi.unstubAllEnvs();
|
|
3497
3502
|
const syncSpy = vi.fn().mockResolvedValue(defaultSyncResult());
|
|
3503
|
+
const tmpHqRoot = fs.mkdtempSync(path.join(os.tmpdir(), "hq-runner-test-"));
|
|
3498
3504
|
try {
|
|
3505
|
+
fs.mkdirSync(path.join(tmpHqRoot, "companies"), { recursive: true });
|
|
3506
|
+
// Empty-ish manifest: no cloud_uid slugs beyond what membership provides.
|
|
3507
|
+
fs.writeFileSync(
|
|
3508
|
+
path.join(tmpHqRoot, "companies", "manifest.yaml"),
|
|
3509
|
+
"companies: {}\n",
|
|
3510
|
+
);
|
|
3499
3511
|
const deps = makeDeps({
|
|
3500
3512
|
createVaultClient: () =>
|
|
3501
3513
|
makeVaultStub({
|
|
@@ -3513,7 +3525,10 @@ describe("personal slot fanout", () => {
|
|
|
3513
3525
|
sync: syncSpy,
|
|
3514
3526
|
});
|
|
3515
3527
|
|
|
3516
|
-
const code = await runRunner(
|
|
3528
|
+
const code = await runRunner(
|
|
3529
|
+
["--companies", "--hq-root", tmpHqRoot],
|
|
3530
|
+
deps,
|
|
3531
|
+
);
|
|
3517
3532
|
expect(code).toBe(0);
|
|
3518
3533
|
|
|
3519
3534
|
// Personal slot: teamSyncedSlugs present, populated with the team-synced
|
|
@@ -3543,6 +3558,7 @@ describe("personal slot fanout", () => {
|
|
|
3543
3558
|
expect(Object.keys(args)).not.toContain("teamSyncedSlugs");
|
|
3544
3559
|
}
|
|
3545
3560
|
} finally {
|
|
3561
|
+
fs.rmSync(tmpHqRoot, { recursive: true, force: true });
|
|
3546
3562
|
vi.unstubAllEnvs();
|
|
3547
3563
|
}
|
|
3548
3564
|
});
|
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* disk + caller-supplied option sets, so we exercise them against tmp
|
|
7
7
|
* directories rather than mocking fs. Local (non-cloud) companies sync to
|
|
8
8
|
* the personal vault by DEFAULT: a missing/markerless `company.yaml` is
|
|
9
|
-
* INCLUDED; only an explicit `cloud: true` marker
|
|
10
|
-
* `teamSyncedSlugs
|
|
9
|
+
* INCLUDED; only an explicit `cloud: true` marker, membership via
|
|
10
|
+
* `teamSyncedSlugs`, or a `cloud_uid: cmp_*` entry in
|
|
11
|
+
* `companies/manifest.yaml` opts a company out.
|
|
11
12
|
*
|
|
12
13
|
* The sync-runner-level integration (team-synced slug derivation,
|
|
13
14
|
* decommission of cloud-promoted companies, end-to-end share() invocation)
|
|
@@ -22,6 +23,7 @@ import {
|
|
|
22
23
|
computeContinuityPointerPaths,
|
|
23
24
|
computePersonalCompanySubdirs,
|
|
24
25
|
computePersonalVaultPaths,
|
|
26
|
+
readCloudBackedSlugsFromManifest,
|
|
25
27
|
CONTINUITY_POINTER_REL,
|
|
26
28
|
computeAgencySyncPaths,
|
|
27
29
|
AGENCY_SYNC_REL,
|
|
@@ -193,6 +195,43 @@ describe("personal-vault helpers", () => {
|
|
|
193
195
|
).toEqual([path.join("companies", "free")]);
|
|
194
196
|
});
|
|
195
197
|
|
|
198
|
+
// Manifest cloud_uid is the durable cloud-backed signal when the runner
|
|
199
|
+
// has no membership fanout (agent `--personal` ritual). Without this,
|
|
200
|
+
// multi-GB team trees re-enter the personal vault every cycle.
|
|
201
|
+
it("filter: skips slugs with cloud_uid in companies/manifest.yaml", () => {
|
|
202
|
+
writeCompany("local-only", null);
|
|
203
|
+
writeCompany("indigo", null); // no company.yaml cloud:true
|
|
204
|
+
fs.mkdirSync(path.join(hqRoot, "companies"), { recursive: true });
|
|
205
|
+
fs.writeFileSync(
|
|
206
|
+
path.join(hqRoot, "companies", "manifest.yaml"),
|
|
207
|
+
[
|
|
208
|
+
"companies:",
|
|
209
|
+
" indigo:",
|
|
210
|
+
" name: Indigo",
|
|
211
|
+
" cloud_uid: cmp_01KQ2RYAHXHDPCTY9GPQPTH3DG",
|
|
212
|
+
" bucket_name: hq-vault-cmp-01kq2ryahxhdpcty9gpqpth3dg",
|
|
213
|
+
" local-only:",
|
|
214
|
+
" name: Local Only",
|
|
215
|
+
"",
|
|
216
|
+
].join("\n"),
|
|
217
|
+
);
|
|
218
|
+
expect(rel(computePersonalCompanySubdirs(hqRoot))).toEqual([
|
|
219
|
+
path.join("companies", "local-only"),
|
|
220
|
+
]);
|
|
221
|
+
expect([...readCloudBackedSlugsFromManifest(hqRoot)].sort()).toEqual([
|
|
222
|
+
"indigo",
|
|
223
|
+
]);
|
|
224
|
+
});
|
|
225
|
+
|
|
226
|
+
it("filter: missing/unreadable manifest fails open (local companies still included)", () => {
|
|
227
|
+
writeCompany("foo", null);
|
|
228
|
+
// no companies/manifest.yaml
|
|
229
|
+
expect(rel(computePersonalCompanySubdirs(hqRoot))).toEqual([
|
|
230
|
+
path.join("companies", "foo"),
|
|
231
|
+
]);
|
|
232
|
+
expect(readCloudBackedSlugsFromManifest(hqRoot).size).toBe(0);
|
|
233
|
+
});
|
|
234
|
+
|
|
196
235
|
it("filter: skips stray files under companies/ (only directories considered)", () => {
|
|
197
236
|
// Hypothetical: someone drops a README.md at companies/. Should not
|
|
198
237
|
// crash, should not be enumerated as a company subdir.
|