@zixt/host 0.0.133 → 0.0.135

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 (2) hide show
  1. package/dist/index.js +86 -10
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -28,7 +28,7 @@ import { homedir as homedir4 } from "node:os";
28
28
  // package.json
29
29
  var package_default = {
30
30
  name: "@zixt/host",
31
- version: "0.0.133",
31
+ version: "0.0.135",
32
32
  type: "module",
33
33
  exports: {
34
34
  ".": "./src/client.ts",
@@ -19658,6 +19658,7 @@ var TestWebhookDeliveryRequest = external_exports.object({
19658
19658
 
19659
19659
  // ../../packages/contracts/src/manager.ts
19660
19660
  var MANAGER_DEFAULT_MODEL = "gpt-5.6-luna";
19661
+ var MANAGER_DEFAULT_PORTRAIT = 23;
19661
19662
  var MANAGER_DISPLAY_NAME_MAX = 60;
19662
19663
  var MANAGER_INSTRUCTIONS_MAX = 2e4;
19663
19664
  var CONVERSATION_MESSAGE_MAX = 1e5;
@@ -19687,10 +19688,12 @@ var ManagerConfigProjection = external_exports.object({
19687
19688
  */
19688
19689
  slack: external_exports.object({ answerMentions: external_exports.boolean(), answerDirectMessages: external_exports.boolean() }).strict(),
19689
19690
  /**
19690
- * Index into the bundled Manager portrait set shown wherever the Manager
19691
- * speaks; every organization starts on the deployment default (0).
19691
+ * Index into the unified bundled portrait set, shown wherever the Manager
19692
+ * speaks; a new organization starts on MANAGER_DEFAULT_PORTRAIT. The bound
19693
+ * keeps headroom above the current set so a client on a newer build is
19694
+ * never rejected by a server that has not shipped the newer artwork yet.
19692
19695
  */
19693
- portrait: external_exports.number().int().min(0).max(63).default(0),
19696
+ portrait: external_exports.number().int().min(0).max(63).default(MANAGER_DEFAULT_PORTRAIT),
19694
19697
  revision: external_exports.number().int().min(0),
19695
19698
  updatedAt: external_exports.string().nullable()
19696
19699
  }).strict();
@@ -20552,6 +20555,11 @@ var UploadAgentAvatarRequest = external_exports.object({
20552
20555
  mediaType: AgentAvatarMediaType,
20553
20556
  data: external_exports.string().min(4).max(Math.ceil(AGENT_AVATAR_MAX_BYTES * 4 / 3) + 4)
20554
20557
  }).strict();
20558
+ var SelectAgentPortraitRequest = external_exports.object({ portrait: external_exports.number().int().min(0).max(63) }).strict();
20559
+ var SetAgentAvatarRequest = external_exports.union([
20560
+ UploadAgentAvatarRequest,
20561
+ SelectAgentPortraitRequest
20562
+ ]);
20555
20563
  var UploadAgentAvatarResponse = external_exports.object({ agent: Agent, avatarAssetId: AgentAvatarId }).strict();
20556
20564
  var UpdateAgentRequest = external_exports.object({
20557
20565
  name: Agent.shape.name,
@@ -22253,10 +22261,34 @@ var InterviewTurn = InterviewQuestion.extend({
22253
22261
  /** Tailored options fetched by "Not sure, suggest for me"; the person picks, edits, then continues. */
22254
22262
  suggestions: external_exports.array(external_exports.string().trim().min(1).max(200)).max(8).default([]),
22255
22263
  /** The answer here was passed to the Zixt team as product feedback (MG-23); the transcript says so. */
22256
- feedbackNoted: external_exports.boolean().default(false)
22264
+ feedbackNoted: external_exports.boolean().default(false),
22265
+ /**
22266
+ * A correction of an earlier round's answer to the same question (OB-13). It
22267
+ * is not a new question: the round's question budget ignores it and the
22268
+ * rendered transcript shows a one-line note instead of re-asking.
22269
+ */
22270
+ restates: external_exports.object({ id: Key, round: external_exports.number().int().min(1) }).nullable().default(null)
22257
22271
  });
22272
+ var InterviewSubject = external_exports.enum([
22273
+ "business",
22274
+ "channels",
22275
+ "tools",
22276
+ "handoff",
22277
+ "watch",
22278
+ "human_gate",
22279
+ "team",
22280
+ "computer",
22281
+ "purpose",
22282
+ "personal_goals",
22283
+ /** A model-generated or legacy question. Never enters the recap, never settles a subject. */
22284
+ "other"
22285
+ ]);
22286
+ var INTERVIEW_SUBJECTS = InterviewSubject.options.filter(
22287
+ (subject) => subject !== "other"
22288
+ );
22258
22289
  var CompanySetupInterview = external_exports.object({
22259
- turns: external_exports.array(InterviewTurn).max(40),
22290
+ /** Check-in rounds accumulate turns, and a correction appends one more. */
22291
+ turns: external_exports.array(InterviewTurn).max(120),
22260
22292
  /** Increments each time the interview is re-run for an additive re-plan. */
22261
22293
  round: external_exports.number().int().min(1),
22262
22294
  complete: external_exports.boolean(),
@@ -22445,6 +22477,34 @@ var CompanySetupApproval = external_exports.object({
22445
22477
  by: MemberId.nullable(),
22446
22478
  createdAgentIds: external_exports.array(AgentId)
22447
22479
  });
22480
+ var InterviewFact = external_exports.object({
22481
+ subject: InterviewSubject,
22482
+ label: external_exports.string().trim().min(1).max(60),
22483
+ question: InterviewQuestion,
22484
+ /** Null when the subject was asked but skipped or answered "Not sure, suggest for me". */
22485
+ value: external_exports.string().trim().min(1).max(2e3).nullable(),
22486
+ round: external_exports.number().int().min(1),
22487
+ answeredAt: IsoDate.nullable(),
22488
+ /** The answer was corrected in the round now open. */
22489
+ correctedThisRound: external_exports.boolean()
22490
+ });
22491
+ var CheckInTeammate = external_exports.object({
22492
+ agentId: AgentId,
22493
+ name: external_exports.string().trim().min(1).max(120),
22494
+ roleTitle: external_exports.string().trim().min(1).max(80),
22495
+ /** Successful receipts only (done or nothing_to_do); never every terminated attempt. */
22496
+ finishedTasks: external_exports.number().int().min(0),
22497
+ lastFinishedAt: IsoDate.nullable()
22498
+ });
22499
+ var COMPANY_SETUP_MAX_FACTS = 16;
22500
+ var COMPANY_SETUP_MAX_CHECK_IN_TEAM = 12;
22501
+ var COMPANY_SETUP_MAX_CHECK_IN_TOOLS = 8;
22502
+ var CompanySetupCheckIn = external_exports.object({
22503
+ round: external_exports.number().int().min(1),
22504
+ facts: external_exports.array(InterviewFact).max(COMPANY_SETUP_MAX_FACTS),
22505
+ team: external_exports.array(CheckInTeammate).max(COMPANY_SETUP_MAX_CHECK_IN_TEAM),
22506
+ connectedTools: external_exports.array(external_exports.object({ kind: CompanyToolKind, name: external_exports.string().trim().min(1).max(120) })).max(COMPANY_SETUP_MAX_CHECK_IN_TOOLS)
22507
+ });
22448
22508
  var CompanySetupView = external_exports.object({
22449
22509
  id: CompanySetupId.nullable(),
22450
22510
  orgId: OrgId,
@@ -22453,6 +22513,12 @@ var CompanySetupView = external_exports.object({
22453
22513
  interview: CompanySetupInterview.nullable(),
22454
22514
  /** The next unanswered question, when the interview is open. */
22455
22515
  currentQuestion: InterviewTurn.nullable(),
22516
+ /**
22517
+ * The returning-organization check-in (OB-13). Present only for an Admin
22518
+ * whose team already exists and whose interview is open again; null for a
22519
+ * Member, and null on a first run.
22520
+ */
22521
+ checkIn: CompanySetupCheckIn.nullable(),
22456
22522
  plan: CompanySetupPlan.nullable(),
22457
22523
  /**
22458
22524
  * The plan is being proposed in the background (a planner call can take a
@@ -22479,8 +22545,18 @@ var CompanySetupView = external_exports.object({
22479
22545
  });
22480
22546
  var AnswerCompanySetupQuestionRequest = external_exports.object({
22481
22547
  questionId: Key,
22482
- answer: InterviewAnswer
22483
- }).strict();
22548
+ answer: InterviewAnswer,
22549
+ /**
22550
+ * Correct an earlier round's answer to this question (OB-13). The answer
22551
+ * must be text: a correction replaces what was said, so it cannot be a
22552
+ * skip. The pending question is untouched and no question is consumed.
22553
+ */
22554
+ restatesRound: external_exports.number().int().min(1).optional()
22555
+ }).strict().refine((value) => value.restatesRound === void 0 || value.answer.kind === "text", {
22556
+ message: "a correction must be an answer in your own words",
22557
+ path: ["answer"]
22558
+ });
22559
+ var CloseCompanyCheckInRequest = external_exports.object({}).strict();
22484
22560
  var SuggestCompanySetupAnswersRequest = external_exports.object({
22485
22561
  questionId: Key
22486
22562
  }).strict();
@@ -22516,8 +22592,8 @@ var CompanySetupFunnel = external_exports.object({
22516
22592
  teammatesCreated: external_exports.number().int().min(0),
22517
22593
  stepsSkipped: external_exports.number().int().min(0)
22518
22594
  });
22519
- var TEAMMATE_PORTRAIT_COUNT = 16;
22520
- var ALL_PORTRAITS = Array.from({ length: TEAMMATE_PORTRAIT_COUNT }, (_, index) => index);
22595
+ var PORTRAIT_COUNT = 32;
22596
+ var ALL_PORTRAITS = Array.from({ length: PORTRAIT_COUNT }, (_, index) => index);
22521
22597
 
22522
22598
  // ../../packages/contracts/src/product-feedback.ts
22523
22599
  var ProductFeedbackKind = external_exports.enum(["frustration", "missing_capability", "feature_request"]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zixt/host",
3
- "version": "0.0.133",
3
+ "version": "0.0.135",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./src/client.ts",