@opengeni/contracts 2.3.0-canary.0 → 2.5.0-canary.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/dist/agent-authored-durable-text.d.ts +7 -4
- package/dist/atlassian.js +1 -1
- package/dist/{chunk-XW2RKNEU.js → chunk-4I7DWNRR.js} +498 -37
- package/dist/chunk-4I7DWNRR.js.map +1 -0
- package/dist/company-profile.d.ts +3 -3
- package/dist/connection-authority.js +1 -1
- package/dist/google-drive.js +1 -1
- package/dist/index.d.ts +101 -12
- package/dist/index.js +59 -3
- package/dist/knowledge.d.ts +5 -0
- package/dist/organization-membership-lifecycle.d.ts +493 -14
- package/dist/personal-github.js +1 -1
- package/dist/remember.d.ts +7 -4
- package/dist/session-titles.d.ts +23 -0
- package/package.json +1 -1
- package/src/agent-authored-durable-text.ts +12 -11
- package/src/company-profile.ts +3 -3
- package/src/index.ts +143 -19
- package/src/knowledge.ts +1 -0
- package/src/organization-membership-lifecycle.ts +222 -19
- package/src/remember.ts +6 -4
- package/src/session-titles.ts +324 -0
- package/dist/chunk-XW2RKNEU.js.map +0 -1
|
@@ -1405,6 +1405,7 @@ var KnowledgeSearchRequest = z6.object({
|
|
|
1405
1405
|
baseIds: z6.array(z6.string().uuid()).max(50).optional(),
|
|
1406
1406
|
mode: z6.enum(["hybrid", "vector", "keyword"]).optional(),
|
|
1407
1407
|
sourceKinds: z6.array(KnowledgeSource.shape.kind).max(8).optional(),
|
|
1408
|
+
authorityKinds: z6.array(KnowledgeAuthority.shape.kind).max(3).optional(),
|
|
1408
1409
|
aclTags: z6.array(boundedUtf8(KNOWLEDGE_TOPIC_MAX_BYTES).pipe(z6.string().min(1))).max(64).optional(),
|
|
1409
1410
|
limit: z6.number().int().positive().max(KNOWLEDGE_SEARCH_MAX_RESULTS).default(5)
|
|
1410
1411
|
}).strict();
|
|
@@ -4368,6 +4369,218 @@ var SandboxFileArtifactReceipt = z12.object({
|
|
|
4368
4369
|
}
|
|
4369
4370
|
});
|
|
4370
4371
|
|
|
4372
|
+
// src/session-titles.ts
|
|
4373
|
+
var SESSION_TITLE_MAX_CHARACTERS = 200;
|
|
4374
|
+
var AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES = 80;
|
|
4375
|
+
var AUTOMATIC_SESSION_TITLE_FALLBACK = "New conversation";
|
|
4376
|
+
var titleSegmenter;
|
|
4377
|
+
var KNOWN_SENSITIVE_VALUE_PATTERNS = [
|
|
4378
|
+
/-----BEGIN [A-Z ]*PRIVATE KEY-----/iu,
|
|
4379
|
+
/\bBearer\s+[A-Za-z0-9._~+/=-]{8,}/iu,
|
|
4380
|
+
/\b(?:sk-(?:proj-)?|gh[oprsu]_|github_pat_|glpat-|xox[baprs]-)[A-Za-z0-9_-]{8,}/iu,
|
|
4381
|
+
/\bAKIA[0-9A-Z]{16}\b/u,
|
|
4382
|
+
/\bAIza[0-9A-Za-z_-]{20,}\b/u,
|
|
4383
|
+
/\beyJ[A-Za-z0-9_-]+\.eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/u,
|
|
4384
|
+
/[?&](?:access_token|api_key|apikey|password|secret|token)=[^\s&#]+/iu
|
|
4385
|
+
];
|
|
4386
|
+
var URI_SCHEME_CANDIDATE_PATTERN = /\b[a-z][a-z0-9+.-]*:\S+/giu;
|
|
4387
|
+
var WINDOWS_DRIVE_PATH_PATTERN = /^[a-z]:[\\/](?![\\/])[^:]*$/iu;
|
|
4388
|
+
var SCHEMELESS_HOST_CANDIDATE_PATTERN = /\b(?:www\.)?(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z](?:[a-z0-9-]{0,61}[a-z0-9])?(?::\d{1,5})?(?:[/?#][^\s]*)?/giu;
|
|
4389
|
+
var SCHEMELESS_LOCAL_NETWORK_PATTERNS = [
|
|
4390
|
+
/\blocalhost(?:(?::\d{1,5})(?:[/?#][^\s]*)?|[/?#][^\s]*)/iu,
|
|
4391
|
+
/\b(?:(?:25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|1?\d?\d)(?:(?::\d{1,5})(?:[/?#][^\s]*)?|[/?#][^\s]*)/u,
|
|
4392
|
+
/\[(?=[0-9a-f:.]*:[0-9a-f:.]*\])[0-9a-f:.]+\](?:(?::\d{1,5})(?:[/?#][^\s]*)?|[/?#][^\s]*)/iu
|
|
4393
|
+
];
|
|
4394
|
+
var FILE_LIKE_HOST_SUFFIXES = /* @__PURE__ */ new Set([
|
|
4395
|
+
"css",
|
|
4396
|
+
"html",
|
|
4397
|
+
"js",
|
|
4398
|
+
"json",
|
|
4399
|
+
"jsx",
|
|
4400
|
+
"lock",
|
|
4401
|
+
"md",
|
|
4402
|
+
"sql",
|
|
4403
|
+
"toml",
|
|
4404
|
+
"ts",
|
|
4405
|
+
"tsx",
|
|
4406
|
+
"xml",
|
|
4407
|
+
"yaml",
|
|
4408
|
+
"yml"
|
|
4409
|
+
]);
|
|
4410
|
+
var DOTTED_TECHNOLOGY_PATH_AUTHORITIES = /* @__PURE__ */ new Set([
|
|
4411
|
+
"ASP.NET",
|
|
4412
|
+
"AWS.SDK",
|
|
4413
|
+
"Microsoft.Extensions",
|
|
4414
|
+
"System.IO"
|
|
4415
|
+
]);
|
|
4416
|
+
var SECRET_ASSIGNMENT_CANDIDATE_PATTERN = /(?:^|[^A-Za-z0-9])(?:(['"])([A-Za-z][A-Za-z0-9_. -]*)\1|([A-Za-z][A-Za-z0-9_.-]*))\s*[=:]\s*[^\s,;]+/gu;
|
|
4417
|
+
var SECRET_LABEL_ASSIGNMENT_PATTERN = /\b(?:api[ _-]?key|access[ _-]?token|auth[ _-]?token|credential|credentials|password|passwd|private[ _-]?key|secret|token)\b\s*[=:]\s*[^\s,;]+/iu;
|
|
4418
|
+
var SENSITIVE_ASSIGNMENT_KEY_SUFFIXES = /* @__PURE__ */ new Set([
|
|
4419
|
+
"credential",
|
|
4420
|
+
"credentials",
|
|
4421
|
+
"password",
|
|
4422
|
+
"passwd",
|
|
4423
|
+
"secret",
|
|
4424
|
+
"token"
|
|
4425
|
+
]);
|
|
4426
|
+
var COMPACT_SENSITIVE_ASSIGNMENT_KEY_SUFFIXES = [
|
|
4427
|
+
"apikey",
|
|
4428
|
+
"accesskey",
|
|
4429
|
+
"accesskeyid",
|
|
4430
|
+
"accesstoken",
|
|
4431
|
+
"authtoken",
|
|
4432
|
+
"credential",
|
|
4433
|
+
"credentials",
|
|
4434
|
+
"password",
|
|
4435
|
+
"passwd",
|
|
4436
|
+
"privatekey",
|
|
4437
|
+
"secret",
|
|
4438
|
+
"secretkey",
|
|
4439
|
+
"token"
|
|
4440
|
+
];
|
|
4441
|
+
var SENSITIVE_ASSIGNMENT_KEY_WORD_SUFFIXES = [
|
|
4442
|
+
["api", "key"],
|
|
4443
|
+
["access", "key"],
|
|
4444
|
+
["access", "key", "id"],
|
|
4445
|
+
["auth", "key"],
|
|
4446
|
+
["private", "key"],
|
|
4447
|
+
["secret", "key"]
|
|
4448
|
+
];
|
|
4449
|
+
function hasWordSuffix(words, suffix) {
|
|
4450
|
+
if (words.length < suffix.length) return false;
|
|
4451
|
+
const offset = words.length - suffix.length;
|
|
4452
|
+
return suffix.every((word, index) => words[offset + index] === word);
|
|
4453
|
+
}
|
|
4454
|
+
function containsSensitiveAssignment(value) {
|
|
4455
|
+
for (const match of value.matchAll(SECRET_ASSIGNMENT_CANDIDATE_PATTERN)) {
|
|
4456
|
+
const key = match[2] ?? match[3];
|
|
4457
|
+
if (!key) continue;
|
|
4458
|
+
const words = key.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2").toLowerCase().split(/[^a-z0-9]+/).filter(Boolean);
|
|
4459
|
+
const last = words.at(-1);
|
|
4460
|
+
if (last && SENSITIVE_ASSIGNMENT_KEY_SUFFIXES.has(last)) return true;
|
|
4461
|
+
if (last && COMPACT_SENSITIVE_ASSIGNMENT_KEY_SUFFIXES.some((suffix) => last.endsWith(suffix))) {
|
|
4462
|
+
return true;
|
|
4463
|
+
}
|
|
4464
|
+
if (SENSITIVE_ASSIGNMENT_KEY_WORD_SUFFIXES.some((suffix) => hasWordSuffix(words, suffix))) {
|
|
4465
|
+
return true;
|
|
4466
|
+
}
|
|
4467
|
+
}
|
|
4468
|
+
return false;
|
|
4469
|
+
}
|
|
4470
|
+
function containsUriScheme(value) {
|
|
4471
|
+
for (const match of value.matchAll(URI_SCHEME_CANDIDATE_PATTERN)) {
|
|
4472
|
+
if (!WINDOWS_DRIVE_PATH_PATTERN.test(match[0])) return true;
|
|
4473
|
+
}
|
|
4474
|
+
return false;
|
|
4475
|
+
}
|
|
4476
|
+
function isDottedTechnologyPath(candidate) {
|
|
4477
|
+
if (/[?:#]/u.test(candidate)) return false;
|
|
4478
|
+
const [authority, ...pathSegments] = candidate.split("/");
|
|
4479
|
+
if (!authority || pathSegments.length === 0 || pathSegments.some((segment) => !segment)) {
|
|
4480
|
+
return false;
|
|
4481
|
+
}
|
|
4482
|
+
if (!DOTTED_TECHNOLOGY_PATH_AUTHORITIES.has(authority) || pathSegments.some((segment) => !/^[A-Z][A-Za-z0-9_-]*$/u.test(segment))) {
|
|
4483
|
+
return false;
|
|
4484
|
+
}
|
|
4485
|
+
return true;
|
|
4486
|
+
}
|
|
4487
|
+
function containsSchemelessUrl(value) {
|
|
4488
|
+
if (SCHEMELESS_LOCAL_NETWORK_PATTERNS.some((pattern) => pattern.test(value))) return true;
|
|
4489
|
+
for (const match of value.matchAll(SCHEMELESS_HOST_CANDIDATE_PATTERN)) {
|
|
4490
|
+
const candidate = match[0];
|
|
4491
|
+
if (candidate.toLowerCase().startsWith("www.")) return true;
|
|
4492
|
+
if (!/[/?#]/u.test(candidate)) continue;
|
|
4493
|
+
const authority = candidate.split(/[/?#]/u, 1)[0] ?? "";
|
|
4494
|
+
const hostname = authority.replace(/:\d{1,5}$/u, "");
|
|
4495
|
+
const suffix = hostname.split(".").at(-1)?.toLowerCase();
|
|
4496
|
+
if (suffix && FILE_LIKE_HOST_SUFFIXES.has(suffix)) continue;
|
|
4497
|
+
if (isDottedTechnologyPath(candidate)) continue;
|
|
4498
|
+
return true;
|
|
4499
|
+
}
|
|
4500
|
+
return false;
|
|
4501
|
+
}
|
|
4502
|
+
var OPAQUE_IDENTIFIER_PATTERN = /\b(?=[A-Za-z0-9_-]{32,}\b)(?=[A-Za-z0-9_-]*[A-Za-z])(?=[A-Za-z0-9_-]*\d)[A-Za-z0-9_-]+\b/u;
|
|
4503
|
+
var DEFAULT_IGNORABLE_CODE_POINTS = /\p{Default_Ignorable_Code_Point}+/gu;
|
|
4504
|
+
var ESCAPED_QUOTE_DELIMITERS = /\\+(?=["'])/gu;
|
|
4505
|
+
var TITLE_LABEL_PATTERN = /^(?:(?:suggested|generated|concise)\s+)?(?:(?:session|chat|conversation|task)\s+)?title\s*[:\-–—]\s*/iu;
|
|
4506
|
+
var LEADING_BOILERPLATE_PATTERNS = [
|
|
4507
|
+
/^(?:hi|hello|hey)(?:\s+there)?\s*[,!:.\-–—]*\s*/iu,
|
|
4508
|
+
/^(?:i\s+(?:would\s+like|want|need)\s+you\s+to|i['’]d\s+like\s+you\s+to)\s+/iu,
|
|
4509
|
+
/^(?:please\s+)?(?:can|could|would|will)\s+you\s+/iu,
|
|
4510
|
+
/^(?:your|the)\s+(?:task|job)\s+is\s+to\s+/iu,
|
|
4511
|
+
/^(?:please\s+)?help\s+me\s+(?:to\s+)?/iu,
|
|
4512
|
+
/^please(?:\s*[,!:.\-–—]+\s*|\s+|$)/iu
|
|
4513
|
+
];
|
|
4514
|
+
function automaticTitleDetectionValue(value) {
|
|
4515
|
+
return value.normalize("NFKC").replace(DEFAULT_IGNORABLE_CODE_POINTS, "").replace(ESCAPED_QUOTE_DELIMITERS, "");
|
|
4516
|
+
}
|
|
4517
|
+
function hasVisibleAutomaticTitleContent(value) {
|
|
4518
|
+
return automaticTitleDetectionValue(value).trim().length > 0;
|
|
4519
|
+
}
|
|
4520
|
+
function containsSensitiveAutomaticTitleValue(value) {
|
|
4521
|
+
const detectionValue = automaticTitleDetectionValue(value);
|
|
4522
|
+
if (KNOWN_SENSITIVE_VALUE_PATTERNS.some((pattern) => pattern.test(detectionValue))) return true;
|
|
4523
|
+
if (containsUriScheme(detectionValue)) return true;
|
|
4524
|
+
if (containsSchemelessUrl(detectionValue)) return true;
|
|
4525
|
+
if (SECRET_LABEL_ASSIGNMENT_PATTERN.test(detectionValue)) return true;
|
|
4526
|
+
if (containsSensitiveAssignment(detectionValue)) return true;
|
|
4527
|
+
if (OPAQUE_IDENTIFIER_PATTERN.test(detectionValue)) return true;
|
|
4528
|
+
return false;
|
|
4529
|
+
}
|
|
4530
|
+
function stripAutomaticTitleBoilerplate(value) {
|
|
4531
|
+
let title = value;
|
|
4532
|
+
for (let pass = 0; pass < 4; pass += 1) {
|
|
4533
|
+
const before = title;
|
|
4534
|
+
title = title.replace(/^(?:```[^\n]*|[\s#>*_`"'“”‘’\-–—]+)+/u, "").replace(TITLE_LABEL_PATTERN, "");
|
|
4535
|
+
for (const pattern of LEADING_BOILERPLATE_PATTERNS) {
|
|
4536
|
+
title = title.replace(pattern, "");
|
|
4537
|
+
}
|
|
4538
|
+
title = title.trim();
|
|
4539
|
+
if (title === before) break;
|
|
4540
|
+
}
|
|
4541
|
+
return title;
|
|
4542
|
+
}
|
|
4543
|
+
function automaticTitleGraphemes(value) {
|
|
4544
|
+
if (titleSegmenter === void 0) {
|
|
4545
|
+
titleSegmenter = typeof Intl.Segmenter === "function" ? new Intl.Segmenter(void 0, { granularity: "grapheme" }) : null;
|
|
4546
|
+
}
|
|
4547
|
+
if (titleSegmenter) {
|
|
4548
|
+
return Array.from(titleSegmenter.segment(value), (part) => part.segment);
|
|
4549
|
+
}
|
|
4550
|
+
const graphemes = [];
|
|
4551
|
+
for (const point of value) {
|
|
4552
|
+
const prior = graphemes.at(-1);
|
|
4553
|
+
if (prior && (/^[\p{Mark}\u{FE0E}\u{FE0F}\p{Emoji_Modifier}]$/u.test(point) || point === "\u200D" || prior.endsWith("\u200D"))) {
|
|
4554
|
+
graphemes[graphemes.length - 1] = `${prior}${point}`;
|
|
4555
|
+
} else {
|
|
4556
|
+
graphemes.push(point);
|
|
4557
|
+
}
|
|
4558
|
+
}
|
|
4559
|
+
return graphemes;
|
|
4560
|
+
}
|
|
4561
|
+
function boundAutomaticTitle(value) {
|
|
4562
|
+
const words = value.split(/\s+/u);
|
|
4563
|
+
const wordBounded = words.length > 10 ? words.slice(0, 10).join(" ") : value;
|
|
4564
|
+
const graphemes = automaticTitleGraphemes(wordBounded);
|
|
4565
|
+
if (graphemes.length <= AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES) return wordBounded;
|
|
4566
|
+
const prefix = graphemes.slice(0, AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES).join("");
|
|
4567
|
+
const lastWhitespace = prefix.search(/\s+\S*$/u);
|
|
4568
|
+
return (lastWhitespace >= 16 ? prefix.slice(0, lastWhitespace) : prefix).trimEnd();
|
|
4569
|
+
}
|
|
4570
|
+
function normalizeAutomaticSessionTitle(value) {
|
|
4571
|
+
const firstLine = value.replace(/[\u0000-\u001f\u007f-\u009f]+/gu, "\n").split(/\n+/u).map((line) => line.trim()).find(Boolean);
|
|
4572
|
+
if (!firstLine || !hasVisibleAutomaticTitleContent(firstLine) || containsSensitiveAutomaticTitleValue(firstLine)) {
|
|
4573
|
+
return null;
|
|
4574
|
+
}
|
|
4575
|
+
let title = stripAutomaticTitleBoilerplate(firstLine).replace(/\s+/gu, " ").replace(/[\s.!?,;:\-–—]+$/u, "").trim();
|
|
4576
|
+
if (!title || !hasVisibleAutomaticTitleContent(title) || containsSensitiveAutomaticTitleValue(title)) {
|
|
4577
|
+
return null;
|
|
4578
|
+
}
|
|
4579
|
+
title = boundAutomaticTitle(title).replace(/[\s.!?,;:\-–—]+$/u, "").trim();
|
|
4580
|
+
if (!title || !hasVisibleAutomaticTitleContent(title)) return null;
|
|
4581
|
+
return title;
|
|
4582
|
+
}
|
|
4583
|
+
|
|
4371
4584
|
// src/artifacts.ts
|
|
4372
4585
|
import { z as z13 } from "zod";
|
|
4373
4586
|
var WORKSPACE_ARTIFACT_HTML_MAX_UTF8_BYTES = 4 * 1024 * 1024;
|
|
@@ -5755,8 +5968,8 @@ var AGENT_AUTHORED_COMPANY_PROFILE_SCALAR_MAX_CHARS = 400;
|
|
|
5755
5968
|
var AGENT_AUTHORED_COMPANY_PROFILE_ENTRY_MAX_CHARS = 200;
|
|
5756
5969
|
var AGENT_AUTHORED_COMPANY_PROFILE_CONTENT_MAX_UTF8_BYTES = 4096;
|
|
5757
5970
|
var AGENT_AUTHORED_INSTRUCTION_POLICY_CONTENT_TOO_LONG_MESSAGE = `A workspace rule is composed verbatim into the prompt of every session it applies to (every session for a global charter or policy, every session bound to the role for a role policy), for as long as it stays active. Keep it under ${AGENT_AUTHORED_INSTRUCTION_POLICY_CONTENT_MAX_CHARS} characters: one rule, imperative, no numbered procedure. Split unrelated rules into separate entries.`;
|
|
5758
|
-
var AGENT_AUTHORED_PREFERENCE_CONTENT_TOO_LONG_MESSAGE = `A
|
|
5759
|
-
var AGENT_AUTHORED_COMPANY_PROFILE_TOO_LONG_MESSAGE = `
|
|
5971
|
+
var AGENT_AUTHORED_PREFERENCE_CONTENT_TOO_LONG_MESSAGE = `A Skill is durable Agent Knowledge that agents retrieve on demand, so its length is retrieval cost rather than standing prompt cost: only its short title and description are composed into every session prompt. Keep it under ${AGENT_AUTHORED_PREFERENCE_CONTENT_MAX_CHARS} characters: state the preference plainly, no numbered procedure and no examples. Put procedure in a Document or Skill and reference it instead.`;
|
|
5972
|
+
var AGENT_AUTHORED_COMPANY_PROFILE_TOO_LONG_MESSAGE = `Organization identity and mission are mandatory prompt context in every root session across the organization. Keep each under ${AGENT_AUTHORED_COMPANY_PROFILE_SCALAR_MAX_CHARS} characters: one concise descriptive statement, no products, customers, goals, constraints, procedure, or marketing copy. Those details belong in organization Documents and are retrieved as evidence when relevant.`;
|
|
5760
5973
|
var AGENT_AUTHORED_REMEMBER_CONTENT_TOO_LONG_MESSAGE = `Remembered content is bounded by where it lands: a mandatory workspace rule at most ${AGENT_AUTHORED_INSTRUCTION_POLICY_CONTENT_MAX_CHARS} characters because it is composed into every session prompt it applies to, a preference at most ${AGENT_AUTHORED_PREFERENCE_CONTENT_MAX_CHARS}, a Knowledge fact at most 4000. Write one imperative statement in 1-3 sentences, split unrelated entries, and keep procedure in a Document or Skill that the entry references.`;
|
|
5761
5974
|
var AGENT_AUTHORED_DURABLE_TEXT_STYLE = "Durable text is prompt cost, not a place to be thorough: write one imperative statement in 1-3 sentences, with no numbered steps, no examples, no rationale and no restating of defaults. Prefer several small entries over one long one, and keep procedure in a Document or Skill that the rule references instead of inlining it.";
|
|
5762
5975
|
function agentAuthoredDurableTextTooLongMessage(input) {
|
|
@@ -7468,10 +7681,30 @@ var TaskNoteListResponse = z24.object({
|
|
|
7468
7681
|
// src/organization-membership-lifecycle.ts
|
|
7469
7682
|
import { z as z25 } from "zod";
|
|
7470
7683
|
var OrganizationMembershipRole = z25.enum(["owner", "admin", "member"]);
|
|
7684
|
+
var WorkspaceMemberRole = z25.enum(["viewer", "member", "admin", "custom"]);
|
|
7685
|
+
var AssignableWorkspaceMemberRole = z25.enum(["viewer", "member", "admin"]);
|
|
7471
7686
|
var OrganizationInvitationStatus = z25.enum(["pending", "accepted", "revoked", "expired"]);
|
|
7687
|
+
var OrganizationUserSetupDeliveryState = z25.enum([
|
|
7688
|
+
"pending",
|
|
7689
|
+
"sent",
|
|
7690
|
+
"failed",
|
|
7691
|
+
"outcome_unknown",
|
|
7692
|
+
"revoked"
|
|
7693
|
+
]);
|
|
7694
|
+
var OrganizationUserSetupDelivery = z25.object({
|
|
7695
|
+
id: z25.string().uuid(),
|
|
7696
|
+
state: OrganizationUserSetupDeliveryState,
|
|
7697
|
+
attemptCount: z25.number().int().nonnegative(),
|
|
7698
|
+
revision: z25.number().int().positive(),
|
|
7699
|
+
errorClass: z25.string().min(1).max(64).nullable(),
|
|
7700
|
+
retryState: z25.enum(["available", "reconciliation_required", "unavailable"]),
|
|
7701
|
+
sentAt: z25.string().datetime({ offset: true }).nullable(),
|
|
7702
|
+
updatedAt: z25.string().datetime({ offset: true })
|
|
7703
|
+
});
|
|
7472
7704
|
var OrganizationInvitation = z25.object({
|
|
7473
7705
|
id: z25.string().uuid(),
|
|
7474
7706
|
organizationId: z25.string().uuid(),
|
|
7707
|
+
organizationName: z25.string().trim().min(1).max(120).nullable().default(null),
|
|
7475
7708
|
targetEmail: z25.string().email(),
|
|
7476
7709
|
targetName: z25.string().trim().min(1).max(120).nullable().default(null),
|
|
7477
7710
|
initialWorkspaceIds: z25.array(z25.string().uuid()).max(100).default([]),
|
|
@@ -7481,7 +7714,8 @@ var OrganizationInvitation = z25.object({
|
|
|
7481
7714
|
expiresAt: z25.string().datetime({ offset: true }),
|
|
7482
7715
|
acceptedMembershipId: z25.string().uuid().nullable(),
|
|
7483
7716
|
createdAt: z25.string().datetime({ offset: true }),
|
|
7484
|
-
updatedAt: z25.string().datetime({ offset: true })
|
|
7717
|
+
updatedAt: z25.string().datetime({ offset: true }),
|
|
7718
|
+
delivery: OrganizationUserSetupDelivery.nullable().default(null)
|
|
7485
7719
|
});
|
|
7486
7720
|
var OrganizationMember = z25.object({
|
|
7487
7721
|
id: z25.string().uuid(),
|
|
@@ -7498,6 +7732,27 @@ var OrganizationMember = z25.object({
|
|
|
7498
7732
|
createdAt: z25.string().datetime({ offset: true }),
|
|
7499
7733
|
updatedAt: z25.string().datetime({ offset: true })
|
|
7500
7734
|
});
|
|
7735
|
+
var OrganizationAdministrationMemberWorkspaceAccess = z25.object({
|
|
7736
|
+
workspaceId: z25.string().uuid(),
|
|
7737
|
+
workspaceName: z25.string().min(1).max(255),
|
|
7738
|
+
membershipId: z25.string().uuid(),
|
|
7739
|
+
role: WorkspaceMemberRole,
|
|
7740
|
+
updatedAt: z25.string().datetime({ offset: true })
|
|
7741
|
+
});
|
|
7742
|
+
var OrganizationAdministrationMember = z25.object({
|
|
7743
|
+
id: z25.string().uuid(),
|
|
7744
|
+
organizationId: z25.string().uuid(),
|
|
7745
|
+
subjectId: z25.string().min(1).max(1024),
|
|
7746
|
+
name: z25.string().min(1).max(1024).nullable(),
|
|
7747
|
+
email: z25.string().email().max(320).nullable(),
|
|
7748
|
+
role: OrganizationMembershipRole,
|
|
7749
|
+
status: z25.enum(["provisioning", "active", "suspended", "revoked"]),
|
|
7750
|
+
authorizationRevision: z25.number().int().positive(),
|
|
7751
|
+
sharedWorkspaceAccess: z25.array(OrganizationAdministrationMemberWorkspaceAccess).max(500),
|
|
7752
|
+
revokedAt: z25.string().datetime({ offset: true }).nullable(),
|
|
7753
|
+
createdAt: z25.string().datetime({ offset: true }),
|
|
7754
|
+
updatedAt: z25.string().datetime({ offset: true })
|
|
7755
|
+
});
|
|
7501
7756
|
var OrganizationSummary = z25.object({
|
|
7502
7757
|
id: z25.string().uuid(),
|
|
7503
7758
|
name: z25.string().trim().min(1).max(120),
|
|
@@ -7519,12 +7774,17 @@ var UpdateOrganizationPrivateSessionSettingsRequest = z25.object({
|
|
|
7519
7774
|
}).strict();
|
|
7520
7775
|
var OrganizationWorkspaceAccessMember = z25.object({
|
|
7521
7776
|
membershipId: z25.string().uuid(),
|
|
7777
|
+
organizationMembershipId: z25.string().uuid().nullable(),
|
|
7522
7778
|
subjectId: z25.string().min(1).max(1024),
|
|
7779
|
+
name: z25.string().min(1).max(1024).nullable(),
|
|
7780
|
+
email: z25.string().email().max(320).nullable(),
|
|
7523
7781
|
subjectLabel: z25.string().min(1).max(1024).nullable(),
|
|
7524
7782
|
principalKind: z25.enum(["human", "service"]),
|
|
7525
|
-
|
|
7783
|
+
organizationRole: OrganizationMembershipRole.nullable(),
|
|
7784
|
+
role: WorkspaceMemberRole,
|
|
7526
7785
|
permissions: z25.array(z25.string().min(1).max(128)),
|
|
7527
|
-
createdAt: z25.string().datetime({ offset: true })
|
|
7786
|
+
createdAt: z25.string().datetime({ offset: true }),
|
|
7787
|
+
updatedAt: z25.string().datetime({ offset: true })
|
|
7528
7788
|
});
|
|
7529
7789
|
var OrganizationWorkspaceAccess = z25.object({
|
|
7530
7790
|
id: z25.string().uuid(),
|
|
@@ -7534,21 +7794,47 @@ var OrganizationWorkspaceAccess = z25.object({
|
|
|
7534
7794
|
updatedAt: z25.string().datetime({ offset: true }),
|
|
7535
7795
|
members: z25.array(OrganizationWorkspaceAccessMember).max(1e3)
|
|
7536
7796
|
});
|
|
7797
|
+
var OrganizationWorkspaceRoleDefinition = z25.object({
|
|
7798
|
+
role: AssignableWorkspaceMemberRole,
|
|
7799
|
+
label: z25.string().min(1).max(64),
|
|
7800
|
+
description: z25.string().min(1).max(512),
|
|
7801
|
+
permissions: z25.array(Permission).min(1)
|
|
7802
|
+
});
|
|
7537
7803
|
var OrganizationAdministrationOverview = z25.object({
|
|
7538
7804
|
organization: OrganizationSummary,
|
|
7805
|
+
roles: z25.array(OrganizationWorkspaceRoleDefinition).length(3),
|
|
7539
7806
|
workspaces: z25.array(OrganizationWorkspaceAccess).max(500)
|
|
7540
7807
|
});
|
|
7541
|
-
var AddOrganizationWorkspaceMemberRequest = z25.object({
|
|
7542
|
-
organizationMembershipId: z25.string().uuid(),
|
|
7543
|
-
role: z25.string().trim().min(1).max(64).optional(),
|
|
7544
|
-
permissions: z25.array(Permission).max(128)
|
|
7545
|
-
});
|
|
7546
7808
|
var CreateOrganizationWorkspaceRequest = z25.object({
|
|
7547
7809
|
name: z25.string().trim().min(1).max(120),
|
|
7548
|
-
slug: z25.string().trim().min(1).max(120).nullable().optional(),
|
|
7549
|
-
agentInstructions: z25.string().nullable().optional(),
|
|
7550
7810
|
operationId: z25.string().uuid()
|
|
7551
|
-
});
|
|
7811
|
+
}).strict();
|
|
7812
|
+
var UpdateOrganizationWorkspaceRequest = z25.object({
|
|
7813
|
+
name: z25.string().trim().min(1).max(120),
|
|
7814
|
+
expectedUpdatedAt: z25.string().datetime({ offset: true }),
|
|
7815
|
+
operationId: z25.string().uuid()
|
|
7816
|
+
}).strict();
|
|
7817
|
+
var PutOrganizationWorkspaceMemberRequest = z25.discriminatedUnion("role", [
|
|
7818
|
+
z25.object({
|
|
7819
|
+
role: AssignableWorkspaceMemberRole,
|
|
7820
|
+
expectedUpdatedAt: z25.string().datetime({ offset: true }).nullable(),
|
|
7821
|
+
operationId: z25.string().uuid()
|
|
7822
|
+
}).strict(),
|
|
7823
|
+
z25.object({
|
|
7824
|
+
role: z25.literal("custom"),
|
|
7825
|
+
permissions: z25.array(Permission).max(128),
|
|
7826
|
+
expectedUpdatedAt: z25.string().datetime({ offset: true }).nullable(),
|
|
7827
|
+
operationId: z25.string().uuid()
|
|
7828
|
+
}).strict()
|
|
7829
|
+
]);
|
|
7830
|
+
var RevokeOrganizationWorkspaceMemberRequest = z25.object({
|
|
7831
|
+
expectedUpdatedAt: z25.string().datetime({ offset: true }),
|
|
7832
|
+
operationId: z25.string().uuid()
|
|
7833
|
+
}).strict();
|
|
7834
|
+
var RevokeOrganizationWorkspaceMemberResponse = z25.object({
|
|
7835
|
+
removed: z25.boolean(),
|
|
7836
|
+
replay: z25.boolean()
|
|
7837
|
+
}).strict();
|
|
7552
7838
|
var CreateOrganizationRequest = z25.object({
|
|
7553
7839
|
name: z25.string().trim().min(1).max(120),
|
|
7554
7840
|
operationId: z25.string().uuid()
|
|
@@ -7638,6 +7924,51 @@ var CreateOrganizationInvitationRequest = z25.object({
|
|
|
7638
7924
|
expiresAt: z25.string().datetime({ offset: true }),
|
|
7639
7925
|
operationId: z25.string().uuid()
|
|
7640
7926
|
});
|
|
7927
|
+
var CompleteOrganizationUserSetupRequest = z25.object({
|
|
7928
|
+
token: z25.string().min(32).max(2048),
|
|
7929
|
+
name: z25.string().trim().min(1).max(120),
|
|
7930
|
+
password: z25.string().min(8).max(128),
|
|
7931
|
+
operationId: z25.string().uuid()
|
|
7932
|
+
});
|
|
7933
|
+
var CompleteOrganizationUserSetupResponse = z25.object({
|
|
7934
|
+
status: z25.literal("complete")
|
|
7935
|
+
});
|
|
7936
|
+
var PreviewOrganizationUserSetupRequest = z25.object({ token: z25.string().min(32).max(2048) }).strict();
|
|
7937
|
+
var OrganizationUserSetupPreviewWorkspace = z25.object({
|
|
7938
|
+
workspaceId: z25.string().uuid(),
|
|
7939
|
+
workspaceName: z25.string().min(1).max(255),
|
|
7940
|
+
role: AssignableWorkspaceMemberRole
|
|
7941
|
+
});
|
|
7942
|
+
var OrganizationUserSetupPreviewUnavailable = z25.object({
|
|
7943
|
+
state: z25.enum(["unavailable", "expired", "revoked", "completed"])
|
|
7944
|
+
});
|
|
7945
|
+
var OrganizationUserSetupPreviewPending = z25.object({
|
|
7946
|
+
state: z25.literal("pending"),
|
|
7947
|
+
organizationId: z25.string().uuid(),
|
|
7948
|
+
organizationName: z25.string().trim().min(1).max(120),
|
|
7949
|
+
targetEmail: z25.string().email().max(320),
|
|
7950
|
+
targetName: z25.string().trim().min(1).max(120).nullable(),
|
|
7951
|
+
organizationRole: OrganizationMembershipRole,
|
|
7952
|
+
sharedWorkspaceAccess: z25.array(OrganizationUserSetupPreviewWorkspace).max(100),
|
|
7953
|
+
expiresAt: z25.string().datetime({ offset: true })
|
|
7954
|
+
});
|
|
7955
|
+
var OrganizationUserSetupPreview = z25.discriminatedUnion("state", [
|
|
7956
|
+
OrganizationUserSetupPreviewUnavailable,
|
|
7957
|
+
OrganizationUserSetupPreviewPending
|
|
7958
|
+
]);
|
|
7959
|
+
var RetryOrganizationUserSetupDeliveryRequest = z25.object({ operationId: z25.string().uuid() }).strict();
|
|
7960
|
+
var CompleteSelfServiceOrganizationSetupRequest = z25.object({
|
|
7961
|
+
organizationName: z25.string().trim().min(1).max(120),
|
|
7962
|
+
operationId: z25.string().uuid()
|
|
7963
|
+
});
|
|
7964
|
+
var CompleteSelfServiceOrganizationSetupResponse = z25.object({
|
|
7965
|
+
status: z25.literal("complete"),
|
|
7966
|
+
organizationId: z25.string().uuid(),
|
|
7967
|
+
personalWorkspaceId: z25.string().uuid()
|
|
7968
|
+
});
|
|
7969
|
+
var SelfServiceOrganizationOnboardingStatus = z25.object({
|
|
7970
|
+
state: z25.enum(["required", "invitation_pending", "unavailable", "complete"])
|
|
7971
|
+
});
|
|
7641
7972
|
var AcceptOrganizationInvitationRequest = z25.object({
|
|
7642
7973
|
expectedRevision: z25.number().int().positive(),
|
|
7643
7974
|
operationId: z25.string().uuid()
|
|
@@ -7696,6 +8027,9 @@ var AcceptOrganizationInvitationResponse = z25.object({
|
|
|
7696
8027
|
var ListOrganizationMembersResponse = z25.object({
|
|
7697
8028
|
members: z25.array(OrganizationMember)
|
|
7698
8029
|
});
|
|
8030
|
+
var ListOrganizationAdministrationMembersResponse = z25.object({
|
|
8031
|
+
members: z25.array(OrganizationAdministrationMember).max(1e3)
|
|
8032
|
+
});
|
|
7699
8033
|
var ListSelfOrganizationMembershipsResponse = z25.object({
|
|
7700
8034
|
memberships: z25.array(OrganizationMember)
|
|
7701
8035
|
});
|
|
@@ -7734,7 +8068,7 @@ var RememberRequest = z26.discriminatedUnion("lane", [
|
|
|
7734
8068
|
lane: z26.literal("instruction_policy"),
|
|
7735
8069
|
// A mandatory rule is composed verbatim into the prompt of every session
|
|
7736
8070
|
// it applies to, for as long as it stays active, so this is the tightest
|
|
7737
|
-
// agent budget in
|
|
8071
|
+
// agent budget in Agent Knowledge.
|
|
7738
8072
|
content: z26.string().trim().min(1).max(
|
|
7739
8073
|
AGENT_AUTHORED_INSTRUCTION_POLICY_CONTENT_MAX_CHARS,
|
|
7740
8074
|
AGENT_AUTHORED_INSTRUCTION_POLICY_CONTENT_TOO_LONG_MESSAGE
|
|
@@ -7775,11 +8109,13 @@ var RememberActivationSummary = z26.discriminatedUnion("destination", [
|
|
|
7775
8109
|
destination: z26.literal("knowledge"),
|
|
7776
8110
|
receiptId: z26.string().uuid(),
|
|
7777
8111
|
claimId: z26.string().uuid(),
|
|
8112
|
+
/** The retrievable Memory record materialized from the approved claim. */
|
|
8113
|
+
memoryId: z26.string().uuid(),
|
|
7778
8114
|
approvalReviewId: z26.string().uuid(),
|
|
7779
8115
|
effectiveAt: z26.string().datetime().nullable(),
|
|
7780
8116
|
authorityKind: z26.literal("human_confirmed"),
|
|
7781
|
-
/**
|
|
7782
|
-
undo: z26.literal("
|
|
8117
|
+
/** Correct or archive the materialized record through the Memory lifecycle. */
|
|
8118
|
+
undo: z26.literal("memory_management")
|
|
7783
8119
|
})
|
|
7784
8120
|
]);
|
|
7785
8121
|
var RememberReceipt = z26.discriminatedUnion("status", [
|
|
@@ -8852,6 +9188,7 @@ var SessionTenancyBlocker = z27.enum([
|
|
|
8852
9188
|
"shared_sandbox_group"
|
|
8853
9189
|
]);
|
|
8854
9190
|
var SESSION_OPERATION_KEY_MAX_CHARS = 256;
|
|
9191
|
+
var MAX_SELECTED_VARIABLE_SETS = 25;
|
|
8855
9192
|
var SessionTenancyIdempotencyKey = z27.string().trim().min(1).max(SESSION_OPERATION_KEY_MAX_CHARS);
|
|
8856
9193
|
var UpdateSessionVisibilityRequest = z27.object({
|
|
8857
9194
|
visibility: SessionVisibility,
|
|
@@ -8886,7 +9223,11 @@ var UpdateSessionVisibilityResponse = z27.object({
|
|
|
8886
9223
|
var ForkSessionRequest = z27.object({
|
|
8887
9224
|
idempotencyKey: SessionTenancyIdempotencyKey,
|
|
8888
9225
|
visibility: SessionVisibility,
|
|
8889
|
-
workspaceSharedAcknowledged: z27.boolean()
|
|
9226
|
+
workspaceSharedAcknowledged: z27.boolean(),
|
|
9227
|
+
// Optional fresh-session runtime setup. Omission preserves the historical
|
|
9228
|
+
// content-only fork; explicit null/[] creates a rigless, set-free restart.
|
|
9229
|
+
rigId: z27.string().uuid().nullable().optional(),
|
|
9230
|
+
variableSetIds: z27.array(z27.string().uuid()).max(MAX_SELECTED_VARIABLE_SETS).optional()
|
|
8890
9231
|
}).strict().superRefine((value, context) => {
|
|
8891
9232
|
if (value.visibility === "private" && value.workspaceSharedAcknowledged) {
|
|
8892
9233
|
context.addIssue({
|
|
@@ -8895,6 +9236,13 @@ var ForkSessionRequest = z27.object({
|
|
|
8895
9236
|
message: "workspaceSharedAcknowledged must be false for a private destination"
|
|
8896
9237
|
});
|
|
8897
9238
|
}
|
|
9239
|
+
if (value.variableSetIds && new Set(value.variableSetIds).size !== value.variableSetIds.length) {
|
|
9240
|
+
context.addIssue({
|
|
9241
|
+
code: "custom",
|
|
9242
|
+
path: ["variableSetIds"],
|
|
9243
|
+
message: "variableSetIds must not contain duplicates"
|
|
9244
|
+
});
|
|
9245
|
+
}
|
|
8898
9246
|
});
|
|
8899
9247
|
var ForkSessionResponse = z27.object({
|
|
8900
9248
|
operationId: z27.string().uuid(),
|
|
@@ -8918,6 +9266,7 @@ var ManagedAccount = z27.object({
|
|
|
8918
9266
|
var Workspace = z27.object({
|
|
8919
9267
|
id: z27.string().uuid(),
|
|
8920
9268
|
accountId: z27.string().uuid(),
|
|
9269
|
+
kind: z27.enum(["personal", "shared"]),
|
|
8921
9270
|
name: z27.string(),
|
|
8922
9271
|
slug: z27.string().nullable(),
|
|
8923
9272
|
externalSource: z27.string().nullable(),
|
|
@@ -10950,6 +11299,7 @@ var DocumentSearchRequest = z27.object({
|
|
|
10950
11299
|
baseIds: z27.array(z27.string().uuid()).optional(),
|
|
10951
11300
|
mode: DocumentSearchMode.optional(),
|
|
10952
11301
|
sourceKinds: z27.array(KnowledgeSourceKind).optional(),
|
|
11302
|
+
authorityKinds: z27.array(DocumentAuthorityKind).max(3).optional(),
|
|
10953
11303
|
aclTags: z27.array(z27.string().min(1)).optional(),
|
|
10954
11304
|
limit: z27.number().int().positive().max(50).default(5)
|
|
10955
11305
|
});
|
|
@@ -11515,6 +11865,17 @@ var UpdateSessionGoalRequest = z27.union([
|
|
|
11515
11865
|
var UpdateSessionRequest = z27.object({
|
|
11516
11866
|
title: z27.string().min(1).max(200)
|
|
11517
11867
|
});
|
|
11868
|
+
var UpdateSessionVariableSetsRequest = z27.object({
|
|
11869
|
+
variableSetIds: z27.array(z27.string().uuid()).max(MAX_SELECTED_VARIABLE_SETS)
|
|
11870
|
+
}).strict().superRefine((value, context) => {
|
|
11871
|
+
if (new Set(value.variableSetIds).size !== value.variableSetIds.length) {
|
|
11872
|
+
context.addIssue({
|
|
11873
|
+
code: z27.ZodIssueCode.custom,
|
|
11874
|
+
path: ["variableSetIds"],
|
|
11875
|
+
message: "variableSetIds must not contain duplicates"
|
|
11876
|
+
});
|
|
11877
|
+
}
|
|
11878
|
+
});
|
|
11518
11879
|
var UpdateSessionToolPolicyRequest = z27.union([
|
|
11519
11880
|
z27.object({
|
|
11520
11881
|
mode: z27.literal("workspace_default"),
|
|
@@ -11839,6 +12200,7 @@ var SessionAuthorizationOperation = z27.enum([
|
|
|
11839
12200
|
"session.human_input.write",
|
|
11840
12201
|
"session.title.write",
|
|
11841
12202
|
"session.channel.write",
|
|
12203
|
+
"session.variable_sets.write",
|
|
11842
12204
|
"session.mcp.approval_policy.write",
|
|
11843
12205
|
"session.tool_policy.write",
|
|
11844
12206
|
"session.goal.read",
|
|
@@ -12282,12 +12644,13 @@ var SubmitComposerDraftRequest = ComposerDraft.pick({
|
|
|
12282
12644
|
connectionAuthorities: McpConnectionAuthoritySelections.default([]),
|
|
12283
12645
|
personalResourceAttachment: PersonalResourceAttachmentIntent.optional()
|
|
12284
12646
|
}).superRefine(requireEstablishedPersonalResourceEpoch);
|
|
12285
|
-
var NewSessionDraftOptions =
|
|
12647
|
+
var NewSessionDraftOptions = withVariableSetIdAlias({
|
|
12286
12648
|
visibility: SessionVisibility.optional(),
|
|
12287
12649
|
sandboxBackend: SandboxBackend.optional(),
|
|
12288
12650
|
targetSandboxId: z27.string().uuid().optional(),
|
|
12289
12651
|
workingDir: z27.string().min(1).optional(),
|
|
12290
12652
|
variableSetId: z27.string().uuid().optional(),
|
|
12653
|
+
variableSetIds: z27.array(z27.string().uuid()).max(MAX_SELECTED_VARIABLE_SETS).optional(),
|
|
12291
12654
|
rigId: z27.string().uuid().optional(),
|
|
12292
12655
|
goal: GoalSpec.optional(),
|
|
12293
12656
|
firstPartyMcpPermissions: z27.array(Permission).optional(),
|
|
@@ -12744,17 +13107,43 @@ ${goalContext}`] : [],
|
|
|
12744
13107
|
}
|
|
12745
13108
|
var VariableSetVariableName = z27.string().regex(/^[A-Z][A-Z0-9_]*$/).max(128);
|
|
12746
13109
|
function withVariableSetIdAlias(shape, options = {}) {
|
|
12747
|
-
return z27.preprocess(
|
|
12748
|
-
|
|
12749
|
-
|
|
12750
|
-
|
|
12751
|
-
|
|
12752
|
-
|
|
12753
|
-
|
|
12754
|
-
|
|
12755
|
-
|
|
12756
|
-
|
|
12757
|
-
|
|
13110
|
+
return z27.preprocess(
|
|
13111
|
+
(input) => {
|
|
13112
|
+
if (!input || typeof input !== "object" || Array.isArray(input)) {
|
|
13113
|
+
return input;
|
|
13114
|
+
}
|
|
13115
|
+
const record = input;
|
|
13116
|
+
if (options.rejectKeys?.some((key) => Object.hasOwn(record, key))) return null;
|
|
13117
|
+
const aliased = record.variableSetId !== void 0 || record.environmentId === void 0 ? record : { ...record, variableSetId: record.environmentId };
|
|
13118
|
+
if (aliased.variableSetIds === void 0 && aliased.variableSetId !== void 0) {
|
|
13119
|
+
return {
|
|
13120
|
+
...aliased,
|
|
13121
|
+
variableSetIds: aliased.variableSetId === null ? [] : [aliased.variableSetId]
|
|
13122
|
+
};
|
|
13123
|
+
}
|
|
13124
|
+
return aliased;
|
|
13125
|
+
},
|
|
13126
|
+
z27.object(shape).superRefine((value, context) => {
|
|
13127
|
+
const record = value;
|
|
13128
|
+
if (!Array.isArray(record.variableSetIds)) return;
|
|
13129
|
+
if (new Set(record.variableSetIds).size !== record.variableSetIds.length) {
|
|
13130
|
+
context.addIssue({
|
|
13131
|
+
code: z27.ZodIssueCode.custom,
|
|
13132
|
+
path: ["variableSetIds"],
|
|
13133
|
+
message: "variableSetIds must not contain duplicates"
|
|
13134
|
+
});
|
|
13135
|
+
}
|
|
13136
|
+
if (record.variableSetId === void 0) return;
|
|
13137
|
+
const expected = record.variableSetIds.length > 0 ? record.variableSetIds[record.variableSetIds.length - 1] : null;
|
|
13138
|
+
if (record.variableSetId !== expected) {
|
|
13139
|
+
context.addIssue({
|
|
13140
|
+
code: z27.ZodIssueCode.custom,
|
|
13141
|
+
path: ["variableSetId"],
|
|
13142
|
+
message: "variableSetId must match the last variableSetIds entry"
|
|
13143
|
+
});
|
|
13144
|
+
}
|
|
13145
|
+
})
|
|
13146
|
+
);
|
|
12758
13147
|
}
|
|
12759
13148
|
var VariableSetVariableMetadata = z27.object({
|
|
12760
13149
|
name: VariableSetVariableName,
|
|
@@ -12965,6 +13354,7 @@ var RigChangeVerification = z27.object({
|
|
|
12965
13354
|
startedAt: z27.string().optional(),
|
|
12966
13355
|
finishedAt: z27.string().optional(),
|
|
12967
13356
|
log: z27.string().optional(),
|
|
13357
|
+
platformCheckResults: z27.array(RigCheckResult).optional(),
|
|
12968
13358
|
checkResults: z27.array(RigCheckResult).optional()
|
|
12969
13359
|
}).passthrough();
|
|
12970
13360
|
var RigChange = z27.object({
|
|
@@ -12986,7 +13376,12 @@ var CreateRigRequest = z27.object({
|
|
|
12986
13376
|
name: z27.string().min(1).max(120),
|
|
12987
13377
|
description: z27.string().max(2e3).optional(),
|
|
12988
13378
|
// Initial (version 1) content, inline.
|
|
12989
|
-
|
|
13379
|
+
// Explicit Rig base images are temporarily disabled. Rigs always compose on
|
|
13380
|
+
// the deployment-owned platform sandbox image so Computer, Browser, Terminal,
|
|
13381
|
+
// and the stock runtime cannot be replaced by a user definition. Keep an
|
|
13382
|
+
// explicit never-field instead of silently stripping `image` from older
|
|
13383
|
+
// clients: callers must receive a validation error and remove the override.
|
|
13384
|
+
image: z27.never().optional(),
|
|
12990
13385
|
setupScript: z27.string().max(131072).optional(),
|
|
12991
13386
|
checks: z27.array(RigCheck).max(100).default([]),
|
|
12992
13387
|
credentialHooks: z27.array(z27.string().min(1).max(200)).max(50).default([]),
|
|
@@ -13026,7 +13421,10 @@ var RigSetupAppendPayload = z27.object({
|
|
|
13026
13421
|
note: z27.string().max(2e3).optional()
|
|
13027
13422
|
});
|
|
13028
13423
|
var RigDefinitionEditPayload = z27.object({
|
|
13029
|
-
|
|
13424
|
+
// See CreateRigRequest.image. Historical RigVersion.image values remain on
|
|
13425
|
+
// the read model for compatibility, but no new definition may set or clear
|
|
13426
|
+
// one through the public write contract.
|
|
13427
|
+
image: z27.never().optional(),
|
|
13030
13428
|
setupScript: z27.string().max(131072).nullish(),
|
|
13031
13429
|
checks: z27.array(RigCheck).max(100).optional(),
|
|
13032
13430
|
credentialHooks: z27.array(z27.string().min(1).max(200)).max(50).optional(),
|
|
@@ -13428,6 +13826,12 @@ var ScheduledTaskRunAcceptedExecution = /* @__PURE__ */ z27.object({
|
|
|
13428
13826
|
mcpServerIds: z27.array(z27.string().min(1).max(256)).max(SCHEDULED_TASK_TOOL_MAX_COUNT),
|
|
13429
13827
|
effectiveMcpServerIds: z27.array(z27.string().min(1).max(256)).max(SCHEDULED_TASK_TOOL_MAX_COUNT),
|
|
13430
13828
|
toolPolicyVersion: z27.number().int().nonnegative(),
|
|
13829
|
+
variableSets: z27.array(
|
|
13830
|
+
z27.object({
|
|
13831
|
+
id: z27.string().uuid(),
|
|
13832
|
+
generation: z27.number().int().positive()
|
|
13833
|
+
}).strict()
|
|
13834
|
+
).max(MAX_SELECTED_VARIABLE_SETS).default([]),
|
|
13431
13835
|
variableSetId: z27.string().uuid().nullable(),
|
|
13432
13836
|
variableSetGeneration: z27.number().int().positive().nullable(),
|
|
13433
13837
|
rigId: z27.string().uuid().nullable(),
|
|
@@ -14165,7 +14569,11 @@ var PackInstallation = z27.object({
|
|
|
14165
14569
|
var OPENGENI_PR_REVIEW_PACK_ID = "pr-review";
|
|
14166
14570
|
var OPENGENI_PR_REVIEW_SESSION_ROLE = "pull_request_review";
|
|
14167
14571
|
var PrReviewProvider = GitCredentialProvider;
|
|
14168
|
-
var PrReviewCredentialKind = /* @__PURE__ */ z27.enum([
|
|
14572
|
+
var PrReviewCredentialKind = /* @__PURE__ */ z27.enum([
|
|
14573
|
+
"github_app",
|
|
14574
|
+
"managed_github_app",
|
|
14575
|
+
"provider_token"
|
|
14576
|
+
]);
|
|
14169
14577
|
var PrReviewWebhookAuthKind = /* @__PURE__ */ z27.enum([
|
|
14170
14578
|
"hmac_sha256",
|
|
14171
14579
|
"shared_token",
|
|
@@ -14261,6 +14669,9 @@ var PrReviewAppRegistration = /* @__PURE__ */ (() => z27.object({
|
|
|
14261
14669
|
provider: PrReviewProvider,
|
|
14262
14670
|
providerBaseUrl: z27.string().url(),
|
|
14263
14671
|
appId: z27.string().nullable(),
|
|
14672
|
+
installationId: z27.string().nullable(),
|
|
14673
|
+
providerAccountLogin: z27.string().nullable(),
|
|
14674
|
+
providerAccountType: z27.enum(["User", "Organization"]).nullable(),
|
|
14264
14675
|
credentialKind: PrReviewCredentialKind,
|
|
14265
14676
|
hasCredential: z27.boolean(),
|
|
14266
14677
|
accessTokenExpiresAt: z27.string().nullable(),
|
|
@@ -14273,6 +14684,21 @@ var PrReviewAppRegistration = /* @__PURE__ */ (() => z27.object({
|
|
|
14273
14684
|
createdAt: z27.string(),
|
|
14274
14685
|
updatedAt: z27.string()
|
|
14275
14686
|
}))();
|
|
14687
|
+
var PrReviewManagedGitHubInstallation = /* @__PURE__ */ (() => z27.object({
|
|
14688
|
+
registrationId: z27.string().uuid(),
|
|
14689
|
+
installationId: z27.string(),
|
|
14690
|
+
accountLogin: z27.string().nullable(),
|
|
14691
|
+
configureUrl: z27.string().url().nullable(),
|
|
14692
|
+
repositoryCount: z27.number().int().nonnegative()
|
|
14693
|
+
}))();
|
|
14694
|
+
var PrReviewManagedGitHubSetup = /* @__PURE__ */ (() => z27.object({
|
|
14695
|
+
configured: z27.boolean(),
|
|
14696
|
+
status: z27.enum(["unavailable", "not_connected", "connected"]),
|
|
14697
|
+
appName: z27.literal("OpenGeni Lens"),
|
|
14698
|
+
connectUrl: z27.string().url().nullable(),
|
|
14699
|
+
installations: z27.array(PrReviewManagedGitHubInstallation),
|
|
14700
|
+
missing: z27.array(z27.string())
|
|
14701
|
+
}))();
|
|
14276
14702
|
var CreatePrReviewRepositoryBindingRequest = /* @__PURE__ */ (() => z27.object({
|
|
14277
14703
|
registrationId: z27.string().uuid(),
|
|
14278
14704
|
repositoryUri: z27.string().url().max(2048),
|
|
@@ -15447,6 +15873,9 @@ var Session = z27.object({
|
|
|
15447
15873
|
// The explicit connected-machine project root selected for this session.
|
|
15448
15874
|
// Null means the enrolled agent's launch workspace root.
|
|
15449
15875
|
workingDir: z27.string().nullable().default(null),
|
|
15876
|
+
// Ordered low-to-high precedence. The legacy singular aliases below expose
|
|
15877
|
+
// the final (highest-precedence) entry for older clients.
|
|
15878
|
+
variableSetIds: z27.array(z27.string().uuid()).max(MAX_SELECTED_VARIABLE_SETS).default([]),
|
|
15450
15879
|
variableSetId: z27.string().uuid().nullable().default(null),
|
|
15451
15880
|
/** @deprecated use variableSetId */
|
|
15452
15881
|
environmentId: z27.string().uuid().nullable().default(null),
|
|
@@ -15624,6 +16053,8 @@ var SessionLineageResponse = z27.object({
|
|
|
15624
16053
|
});
|
|
15625
16054
|
var SessionEventType = z27.enum([
|
|
15626
16055
|
"session.created",
|
|
16056
|
+
"session.variable_sets.updated",
|
|
16057
|
+
"session.runtime.configured",
|
|
15627
16058
|
"session.personal_resources.attached",
|
|
15628
16059
|
"session.visibility.changed",
|
|
15629
16060
|
// Defensive read/transport projection for a malformed or historically
|
|
@@ -17294,8 +17725,10 @@ var CreateSessionRequest = withVariableSetIdAlias(
|
|
|
17294
17725
|
// plane has no authenticated home-directory fact. Only valid WITH
|
|
17295
17726
|
// targetSandboxId; omitted selects the reported root.
|
|
17296
17727
|
workingDir: z27.string().min(1).optional(),
|
|
17297
|
-
//
|
|
17298
|
-
//
|
|
17728
|
+
// Ordered low-to-high precedence. A legacy singular selection is normalized
|
|
17729
|
+
// into one entry by withVariableSetIdAlias; when both are present the
|
|
17730
|
+
// singular value must match the final (highest-precedence) entry.
|
|
17731
|
+
variableSetIds: z27.array(z27.string().uuid()).max(MAX_SELECTED_VARIABLE_SETS).optional(),
|
|
17299
17732
|
variableSetId: z27.string().uuid().optional(),
|
|
17300
17733
|
environmentId: z27.string().uuid().optional(),
|
|
17301
17734
|
// The rig to bind this session to (M3). Its ACTIVE version is resolved and
|
|
@@ -18499,7 +18932,7 @@ var WorkspaceModelCatalogResponse = /* @__PURE__ */ defineModelContractSchema(
|
|
|
18499
18932
|
models: z27.array(WorkspaceModelCatalogModel)
|
|
18500
18933
|
})
|
|
18501
18934
|
);
|
|
18502
|
-
var OPENGENI_API_CONTRACT_REVISION = "2026-08-
|
|
18935
|
+
var OPENGENI_API_CONTRACT_REVISION = "2026-08-personal-only-organization-setup-v1";
|
|
18503
18936
|
var OPENGENI_API_CONTRACT_HEADER = "x-opengeni-api-contract";
|
|
18504
18937
|
var OPENGENI_CORRELATION_HEADER = "x-opengeni-correlation-id";
|
|
18505
18938
|
var ClientConfig = /* @__PURE__ */ defineModelContractSchema(
|
|
@@ -19128,6 +19561,10 @@ export {
|
|
|
19128
19561
|
SANDBOX_FILE_ARTIFACT_MAX_BYTES,
|
|
19129
19562
|
PublishSandboxFileArtifactRequest,
|
|
19130
19563
|
SandboxFileArtifactReceipt,
|
|
19564
|
+
SESSION_TITLE_MAX_CHARACTERS,
|
|
19565
|
+
AUTOMATIC_SESSION_TITLE_MAX_GRAPHEMES,
|
|
19566
|
+
AUTOMATIC_SESSION_TITLE_FALLBACK,
|
|
19567
|
+
normalizeAutomaticSessionTitle,
|
|
19131
19568
|
WORKSPACE_ARTIFACT_HTML_MAX_UTF8_BYTES,
|
|
19132
19569
|
WORKSPACE_ARTIFACT_TITLE_MAX_CHARS,
|
|
19133
19570
|
WORKSPACE_ARTIFACT_DESCRIPTION_MAX_CHARS,
|
|
@@ -19413,17 +19850,27 @@ export {
|
|
|
19413
19850
|
TaskNoteReplacementResult,
|
|
19414
19851
|
TaskNoteListResponse,
|
|
19415
19852
|
OrganizationMembershipRole,
|
|
19853
|
+
WorkspaceMemberRole,
|
|
19854
|
+
AssignableWorkspaceMemberRole,
|
|
19416
19855
|
OrganizationInvitationStatus,
|
|
19856
|
+
OrganizationUserSetupDeliveryState,
|
|
19857
|
+
OrganizationUserSetupDelivery,
|
|
19417
19858
|
OrganizationInvitation,
|
|
19418
19859
|
OrganizationMember,
|
|
19860
|
+
OrganizationAdministrationMemberWorkspaceAccess,
|
|
19861
|
+
OrganizationAdministrationMember,
|
|
19419
19862
|
OrganizationSummary,
|
|
19420
19863
|
OrganizationPrivateSessionSettings,
|
|
19421
19864
|
UpdateOrganizationPrivateSessionSettingsRequest,
|
|
19422
19865
|
OrganizationWorkspaceAccessMember,
|
|
19423
19866
|
OrganizationWorkspaceAccess,
|
|
19867
|
+
OrganizationWorkspaceRoleDefinition,
|
|
19424
19868
|
OrganizationAdministrationOverview,
|
|
19425
|
-
AddOrganizationWorkspaceMemberRequest,
|
|
19426
19869
|
CreateOrganizationWorkspaceRequest,
|
|
19870
|
+
UpdateOrganizationWorkspaceRequest,
|
|
19871
|
+
PutOrganizationWorkspaceMemberRequest,
|
|
19872
|
+
RevokeOrganizationWorkspaceMemberRequest,
|
|
19873
|
+
RevokeOrganizationWorkspaceMemberResponse,
|
|
19427
19874
|
CreateOrganizationRequest,
|
|
19428
19875
|
CreateOrganizationResponse,
|
|
19429
19876
|
UpdateOrganizationNameRequest,
|
|
@@ -19434,6 +19881,15 @@ export {
|
|
|
19434
19881
|
OrganizationRetentionDeletionResult,
|
|
19435
19882
|
OrganizationRetentionDeletionPreview,
|
|
19436
19883
|
CreateOrganizationInvitationRequest,
|
|
19884
|
+
CompleteOrganizationUserSetupRequest,
|
|
19885
|
+
CompleteOrganizationUserSetupResponse,
|
|
19886
|
+
PreviewOrganizationUserSetupRequest,
|
|
19887
|
+
OrganizationUserSetupPreviewWorkspace,
|
|
19888
|
+
OrganizationUserSetupPreview,
|
|
19889
|
+
RetryOrganizationUserSetupDeliveryRequest,
|
|
19890
|
+
CompleteSelfServiceOrganizationSetupRequest,
|
|
19891
|
+
CompleteSelfServiceOrganizationSetupResponse,
|
|
19892
|
+
SelfServiceOrganizationOnboardingStatus,
|
|
19437
19893
|
AcceptOrganizationInvitationRequest,
|
|
19438
19894
|
RevokeOrganizationInvitationRequest,
|
|
19439
19895
|
OrganizationMemberTransitionKind,
|
|
@@ -19444,6 +19900,7 @@ export {
|
|
|
19444
19900
|
ListOrganizationInvitationsPageResponse,
|
|
19445
19901
|
AcceptOrganizationInvitationResponse,
|
|
19446
19902
|
ListOrganizationMembersResponse,
|
|
19903
|
+
ListOrganizationAdministrationMembersResponse,
|
|
19447
19904
|
ListSelfOrganizationMembershipsResponse,
|
|
19448
19905
|
RememberLane,
|
|
19449
19906
|
RememberScope,
|
|
@@ -19529,6 +19986,7 @@ export {
|
|
|
19529
19986
|
SessionTenancyPublicProjection,
|
|
19530
19987
|
SessionTenancyBlocker,
|
|
19531
19988
|
SESSION_OPERATION_KEY_MAX_CHARS,
|
|
19989
|
+
MAX_SELECTED_VARIABLE_SETS,
|
|
19532
19990
|
UpdateSessionVisibilityRequest,
|
|
19533
19991
|
UpdateSessionVisibilityResponse,
|
|
19534
19992
|
ForkSessionRequest,
|
|
@@ -19804,6 +20262,7 @@ export {
|
|
|
19804
20262
|
GoalSpec,
|
|
19805
20263
|
UpdateSessionGoalRequest,
|
|
19806
20264
|
UpdateSessionRequest,
|
|
20265
|
+
UpdateSessionVariableSetsRequest,
|
|
19807
20266
|
UpdateSessionToolPolicyRequest,
|
|
19808
20267
|
UpdateSessionPinRequest,
|
|
19809
20268
|
UpdateSessionAttentionRequest,
|
|
@@ -20043,6 +20502,8 @@ export {
|
|
|
20043
20502
|
CreatePrReviewAppRegistrationRequest,
|
|
20044
20503
|
UpdatePrReviewAppRegistrationRequest,
|
|
20045
20504
|
PrReviewAppRegistration,
|
|
20505
|
+
PrReviewManagedGitHubInstallation,
|
|
20506
|
+
PrReviewManagedGitHubSetup,
|
|
20046
20507
|
CreatePrReviewRepositoryBindingRequest,
|
|
20047
20508
|
UpdatePrReviewRepositoryBindingRequest,
|
|
20048
20509
|
PrReviewRepositoryBinding,
|
|
@@ -20395,4 +20856,4 @@ export {
|
|
|
20395
20856
|
ClientConfig,
|
|
20396
20857
|
evaluateWorkspaceModelPolicy
|
|
20397
20858
|
};
|
|
20398
|
-
//# sourceMappingURL=chunk-
|
|
20859
|
+
//# sourceMappingURL=chunk-4I7DWNRR.js.map
|