@indigoai-us/hq-cli 5.345.149 → 5.345.151
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/CHANGELOG.md +46 -0
- package/dist/command-catalog.generated.d.ts +18 -6
- package/dist/command-catalog.generated.js +21 -6
- package/dist/commands/_patterns.d.ts +6 -0
- package/dist/commands/_patterns.js +6 -0
- package/dist/commands/cloud-off-gate.d.ts +138 -0
- package/dist/commands/cloud-off-gate.js +234 -0
- package/dist/commands/cloud.d.ts +7 -0
- package/dist/commands/cloud.js +59 -17
- package/dist/commands/core-handoff.js +6 -1
- package/dist/commands/groups.js +9 -6
- package/dist/commands/lanes-questions.js +7 -4
- package/dist/commands/lanes.js +13 -6
- package/dist/commands/meetings.js +7 -3
- package/dist/commands/members.d.ts +35 -0
- package/dist/commands/members.js +65 -14
- package/dist/commands/secrets.d.ts +5 -0
- package/dist/commands/secrets.js +11 -6
- package/dist/hq-cloud-sync-runner/bin/sync-runner.js +63282 -62480
- package/dist/hq-cloud-sync-runner/package.json +1 -1
- package/dist/lib/daemon/catalog.d.ts +7 -0
- package/dist/lib/daemon/catalog.js +10 -1
- package/dist/lib/daemon/run.js +13 -0
- package/dist/lib/flag-registry-worker-source.generated.d.ts +1 -1
- package/dist/lib/flag-registry-worker-source.generated.js +1 -1
- package/dist/lib/lanes/index.d.ts +1 -1
- package/dist/lib/lanes/index.js +1 -1
- package/dist/lib/lanes/links.js +27 -11
- package/dist/lib/lanes/store.d.ts +11 -0
- package/dist/lib/lanes/store.js +20 -0
- package/dist/lib/lanes/watch.js +5 -3
- package/dist/lib/vault-sync-switches.d.ts +41 -0
- package/dist/lib/vault-sync-switches.js +86 -0
- package/package.json +8 -8
package/dist/commands/secrets.js
CHANGED
|
@@ -60,7 +60,7 @@ import { fastFlagEnabledDefaultOn } from "../native-fast-route.js";
|
|
|
60
60
|
import { MULTI_COMPANY_SESSION_LOCK_FLAG } from "../lib/cli-flag-keys.js";
|
|
61
61
|
import { secretsExecChildExitCode } from "../utils/child-wrapper-exit.js";
|
|
62
62
|
import { isPlanGateError } from "../utils/plan-gate-error.js";
|
|
63
|
-
import { SECRET_NAME_PATTERN, GROUP_ID_PATTERN, EMAIL_PATTERN } from "./_patterns.js";
|
|
63
|
+
import { SECRET_NAME_PATTERN, GROUP_ID_PATTERN, EMAIL_PATTERN, OUTPOST_UID_PATTERN, } from "./_patterns.js";
|
|
64
64
|
import { describeSecretsScope, formatSecretSaved, formatSecretsListEmpty, formatSecretsListHeader, } from "./secrets-scope.js";
|
|
65
65
|
import { vaultApiFetch, getCompanyUid, getEntityUid, looksLikeCompanyUid, } from "../utils/vault-api.js";
|
|
66
66
|
import { formatApiKeyCapabilityDenial, requireApiKeyCapability, resolveVaultCredentialForCapability, } from "../utils/resolve-vault-credential.js";
|
|
@@ -277,7 +277,7 @@ function promptSecretInteractively() {
|
|
|
277
277
|
process.stdin.resume();
|
|
278
278
|
});
|
|
279
279
|
}
|
|
280
|
-
function parseSecretAclPrincipal(principal) {
|
|
280
|
+
export function parseSecretAclPrincipal(principal) {
|
|
281
281
|
const p = principal.trim();
|
|
282
282
|
if (p === "@all") {
|
|
283
283
|
// Company-wide grant: every active member of the company. The server
|
|
@@ -290,7 +290,12 @@ function parseSecretAclPrincipal(principal) {
|
|
|
290
290
|
if (GROUP_ID_PATTERN.test(p)) {
|
|
291
291
|
return { granteeType: "group", granteeId: p };
|
|
292
292
|
}
|
|
293
|
-
|
|
293
|
+
if (OUTPOST_UID_PATTERN.test(p)) {
|
|
294
|
+
// The company Outpost rides the person grantee slot; the server checks
|
|
295
|
+
// that this id is the company's active Outpost.
|
|
296
|
+
return { granteeType: "person", granteeId: p };
|
|
297
|
+
}
|
|
298
|
+
console.error(chalk.red(`Invalid principal '${principal}': must be '@all', an email address, a group id matching grp_<alphanumeric, underscore, hyphen>, or a company Outpost id (out_…)`));
|
|
294
299
|
return null;
|
|
295
300
|
}
|
|
296
301
|
function describeSecretAclPrincipal(principal) {
|
|
@@ -1312,8 +1317,8 @@ export function registerSecretsCommand(program) {
|
|
|
1312
1317
|
});
|
|
1313
1318
|
secrets
|
|
1314
1319
|
.command("share <path>")
|
|
1315
|
-
.description("Share a secret with an email address, group, or the entire company (@all)")
|
|
1316
|
-
.requiredOption("--with <principal>", "Email address, group id, or @all (entire company) to share with")
|
|
1320
|
+
.description("Share a secret with an email address, group, company Outpost (out_…), or the entire company (@all)")
|
|
1321
|
+
.requiredOption("--with <principal>", "Email address, group id, out_ Outpost id, or @all (entire company) to share with")
|
|
1317
1322
|
.requiredOption("--permission <level>", "Permission level: read | write | admin")
|
|
1318
1323
|
.action(async (path, opts) => {
|
|
1319
1324
|
try {
|
|
@@ -1376,7 +1381,7 @@ export function registerSecretsCommand(program) {
|
|
|
1376
1381
|
secrets
|
|
1377
1382
|
.command("unshare <path>")
|
|
1378
1383
|
.description("Remove a grant from a secret")
|
|
1379
|
-
.requiredOption("--from <principal>", "Email address, group id, or @all (entire company) to remove")
|
|
1384
|
+
.requiredOption("--from <principal>", "Email address, group id, out_ Outpost id, or @all (entire company) to remove")
|
|
1380
1385
|
.action(async (path, opts) => {
|
|
1381
1386
|
try {
|
|
1382
1387
|
rejectIfPersonal(secrets.opts(), "unshare");
|