@burdenoff/microfe-housingvista 2026.1013.1 → 2026.1014.2

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.
@@ -1363,6 +1363,20 @@ export type AssignedQuota = {
1363
1363
  scope: QuotaScope;
1364
1364
  workspaceId?: Maybe<Scalars['ID']['output']>;
1365
1365
  };
1366
+ export type AssistantAccountBudget = {
1367
+ __typename?: 'AssistantAccountBudget';
1368
+ billingAccountId: Scalars['ID']['output'];
1369
+ dailyMicroUsd: Scalars['Int']['output'];
1370
+ dailyTokens: Scalars['Int']['output'];
1371
+ enabled: Scalars['Boolean']['output'];
1372
+ };
1373
+ export type AssistantBudgetReceipt = {
1374
+ __typename?: 'AssistantBudgetReceipt';
1375
+ heldMicroUsd: Scalars['Int']['output'];
1376
+ heldTokens: Scalars['Int']['output'];
1377
+ id: Scalars['ID']['output'];
1378
+ status: Scalars['String']['output'];
1379
+ };
1366
1380
  export type AttachMediaToStepInput = {
1367
1381
  /** Operation context for scoping (workspaceId, userId, productId, moduleId, etc.) */
1368
1382
  context?: InputMaybe<ContextInput>;
@@ -5690,6 +5704,10 @@ export type EvaluateFeatureFlagsInput = {
5690
5704
  productSlug?: InputMaybe<Scalars['String']['input']>;
5691
5705
  workspaceId: Scalars['String']['input'];
5692
5706
  };
5707
+ export type ExchangeOwnDelegationInput = {
5708
+ delegationId: Scalars['ID']['input'];
5709
+ scopes?: InputMaybe<Array<Scalars['String']['input']>>;
5710
+ };
5693
5711
  export type ExchangeTokenInput = {
5694
5712
  appId: Scalars['String']['input'];
5695
5713
  scopes?: InputMaybe<Array<Scalars['String']['input']>>;
@@ -8209,6 +8227,8 @@ export type Mutation = {
8209
8227
  completeSupportAttachmentUpload: SupportAttachmentFile;
8210
8228
  /** Mark a tour as completed for a user */
8211
8229
  completeTour: TourUserProgress;
8230
+ configureAssistantAccountBudget: AssistantAccountBudget;
8231
+ configureAssistantModelPrice: AiModelPrice;
8212
8232
  configureEntitlementSeats: ProductEntitlement;
8213
8233
  /** Configure Kerberos authentication for a tenant */
8214
8234
  configureKerberos: KerberosConfig;
@@ -8579,7 +8599,7 @@ export type Mutation = {
8579
8599
  enableMFA: Scalars['Boolean']['output'];
8580
8600
  enableMaintenanceMode: MaintenanceModeStatus;
8581
8601
  enrollSubscriberInAutomation: AutomationSubscriber;
8582
- /** Idempotently ensure a user is an organization member, primarily for the workspace-invite-accept flow where an invitee gains a workspace inside an org they're not yet a member of. Unlike `addOrganizationMember`: * Returns `OrganizationMember` whether the row was inserted or already existed — no CONFLICT on repeat calls (case 1: already a member). * Does NOT overwrite the existing `role` column on a pre-existing row (case 2: don't demote). * Triggers a real-role assignment in global-rbac-svc at scope = orgId only when the actor has NO existing role assignment at that scope (case 3: real role comes from RBAC, not the data-layer string). The `role` arg defaults to `GUEST` — the most restrictive enum value — because invitees arriving via a workspace invite should not gain first-class org membership. The data-layer string column is a coarse classifier; the authoritative permission decision is evaluated by global-rbac-svc against `actor_role_assignments`. See BOFF-2649 + the RBAC guide at `dev/platform/context/rbac/RBAC_GUIDE_FOR_AI_TOOLS.md`. Called from wspace-workspace-svc::acceptInvitation via service-context (`X-Actor-Type: service`), which bypasses the workspace-admin check inside the resolver. Best-effort from the caller's side — failures must NOT block the upstream invite acceptance. */
8602
+ /** Idempotently ensure a user is an organization member, primarily for the workspace-invite-accept flow where an invitee gains a workspace inside an org they're not yet a member of. Unlike `addOrganizationMember`: * Returns `OrganizationMember` whether the row was inserted or already existed — no CONFLICT on repeat calls (case 1: already a member). * Does NOT overwrite the existing `role` column on a pre-existing row (case 2: don't demote). * Triggers a real-role assignment in global-rbac-svc at scope = orgId only when the actor has NO existing role assignment at that scope (case 3: real role comes from RBAC, not the data-layer string). The `role` arg defaults to `GUEST` — the most restrictive enum value — because invitees arriving via a workspace invite should not gain first-class org membership. The data-layer string column is a coarse classifier; the authoritative permission decision is evaluated by global-rbac-svc against `actor_role_assignments`. See BOFF-2649 + the RBAC guide at `dev/platform/context/identity/rbac/RBAC_GUIDE_FOR_AI_TOOLS.md`. Called from wspace-workspace-svc::acceptInvitation via service-context (`X-Actor-Type: service`), which bypasses the workspace-admin check inside the resolver. Best-effort from the caller's side — failures must NOT block the upstream invite acceptance. */
8583
8603
  ensureOrganizationMember: EnsureOrganizationMemberResult;
8584
8604
  /** Ensure a billing order exists for a store order. Called from the checkout frontend when no billingOrderId is present (e.g. the buyer had no billing account at order-creation time). Creates the billing order server-side so the correct callbackGraphQL endpoint is registered and the billing service can call back after payment to confirm the store order. */
8585
8605
  ensureStoreOrderBillingOrder: EnsureStoreOrderBillingOrderResponse;
@@ -8588,6 +8608,7 @@ export type Mutation = {
8588
8608
  /** Hand this conversation to a person, with its transcript attached. The agent answers only from a baked corpus, so the questions it cannot answer are exactly the ones worth a person's time. This turns the dead end into a handover: it files the conversation as a contact inquiry — the same record the website contact form writes, in the same console, with the same emails — so nobody has to ask the visitor to type their problem out a second time. Requires the conversation token and nothing else. A token that does not own a conversation is reported as NOT_FOUND, never FORBIDDEN, exactly as every other token-scoped call reports it: FORBIDDEN would confirm the conversation exists. Unlike `submitExploreFeedback` this is NOT fire-and-forget — it throws rather than reporting a handover that did not happen, because the visitor is about to be told that someone will get back to them. Rate-limited on the same per-IP budget as sending a message and gated by the same reCAPTCHA, because it is the same anonymous visitor making another public write. Idempotent: one handover per conversation, so a double-clicked button returns the first one rather than putting a second ticket in front of support. */
8589
8609
  escalateExploreConversation: EscalateExploreConversationResult;
8590
8610
  escalateSupportTicket: SupportTicket;
8611
+ exchangeOwnDelegation: AppAsUserTokenResponse;
8591
8612
  /** Exchange app token for app-as-user token (Token Exchange flow) */
8592
8613
  exchangeToken: AppAsUserTokenResponse;
8593
8614
  executeJobNow: JobExecution;
@@ -8936,6 +8957,7 @@ export type Mutation = {
8936
8957
  resendOrganizationInvite: OrganizationInvite;
8937
8958
  resendSurvey: CustomerSatisfactionSurvey;
8938
8959
  resendVerificationEmail: ResendVerificationResult;
8960
+ reserveAssistantAccountBudget: AssistantBudgetReceipt;
8939
8961
  resetCircuitBreaker: CircuitBreakerState;
8940
8962
  /** Reset password using token from email */
8941
8963
  resetPassword: Scalars['Boolean']['output'];
@@ -9105,6 +9127,7 @@ export type Mutation = {
9105
9127
  setUserLanguagePreference: UserLanguagePreference;
9106
9128
  /** Set workspace-level override for a feature flag (super admin or workspace admin). RBAC is scoped to the target workspace via `input.workspaceId`. */
9107
9129
  setWorkspaceFeatureFlagOverride: WorkspaceFeatureFlagOverride;
9130
+ settleAssistantAccountBudget: AssistantBudgetReceipt;
9108
9131
  setupMFA: MfaSetupResult;
9109
9132
  /** Share a WORKFLOW-type application as a public link by setting its visibility to UNLISTED. Only the developer who owns the app can call this. The app must have a manifest (workflow definition) set. */
9110
9133
  shareWorkflow: Application;
@@ -10002,6 +10025,19 @@ export type MutationCompleteTourArgs = {
10002
10025
  userId: Scalars['ID']['input'];
10003
10026
  };
10004
10027
  /** Root mutation type */
10028
+ export type MutationConfigureAssistantAccountBudgetArgs = {
10029
+ billingAccountId: Scalars['ID']['input'];
10030
+ dailyMicroUsd: Scalars['Int']['input'];
10031
+ dailyTokens: Scalars['Int']['input'];
10032
+ enabled: Scalars['Boolean']['input'];
10033
+ };
10034
+ /** Root mutation type */
10035
+ export type MutationConfigureAssistantModelPriceArgs = {
10036
+ inputPer1M: Scalars['String']['input'];
10037
+ model: Scalars['String']['input'];
10038
+ outputPer1M: Scalars['String']['input'];
10039
+ };
10040
+ /** Root mutation type */
10005
10041
  export type MutationConfigureEntitlementSeatsArgs = {
10006
10042
  entitlementId: Scalars['ID']['input'];
10007
10043
  maxSeats: Scalars['Int']['input'];
@@ -11041,6 +11077,10 @@ export type MutationEscalateSupportTicketArgs = {
11041
11077
  reason: Scalars['String']['input'];
11042
11078
  };
11043
11079
  /** Root mutation type */
11080
+ export type MutationExchangeOwnDelegationArgs = {
11081
+ input: ExchangeOwnDelegationInput;
11082
+ };
11083
+ /** Root mutation type */
11044
11084
  export type MutationExchangeTokenArgs = {
11045
11085
  input: ExchangeTokenInput;
11046
11086
  };
@@ -11999,6 +12039,10 @@ export type MutationResendVerificationEmailArgs = {
11999
12039
  email: Scalars['String']['input'];
12000
12040
  };
12001
12041
  /** Root mutation type */
12042
+ export type MutationReserveAssistantAccountBudgetArgs = {
12043
+ input: ReserveAssistantBudgetInput;
12044
+ };
12045
+ /** Root mutation type */
12002
12046
  export type MutationResetCircuitBreakerArgs = {
12003
12047
  scope: Scalars['String']['input'];
12004
12048
  scopeValue: Scalars['String']['input'];
@@ -12397,6 +12441,13 @@ export type MutationSetWorkspaceFeatureFlagOverrideArgs = {
12397
12441
  input: SetWorkspaceFeatureFlagOverrideInput;
12398
12442
  };
12399
12443
  /** Root mutation type */
12444
+ export type MutationSettleAssistantAccountBudgetArgs = {
12445
+ id: Scalars['ID']['input'];
12446
+ inputTokens: Scalars['Int']['input'];
12447
+ outputTokens: Scalars['Int']['input'];
12448
+ workspaceId: Scalars['ID']['input'];
12449
+ };
12450
+ /** Root mutation type */
12400
12451
  export type MutationSetupMfaArgs = {
12401
12452
  method: MfaMethod;
12402
12453
  };
@@ -20627,6 +20678,13 @@ export type ResendVerificationResult = {
20627
20678
  message: Scalars['String']['output'];
20628
20679
  success: Scalars['Boolean']['output'];
20629
20680
  };
20681
+ export type ReserveAssistantBudgetInput = {
20682
+ id: Scalars['ID']['input'];
20683
+ inputTokens: Scalars['Int']['input'];
20684
+ model: Scalars['String']['input'];
20685
+ outputTokens: Scalars['Int']['input'];
20686
+ workspaceId: Scalars['ID']['input'];
20687
+ };
20630
20688
  /** Input for resolving (or creating) the default billing account for a user/org. At least one of `orgId` or `ownerUserId` MUST be supplied: - `orgId` present → resolve-or-create the org's default billing account. - `ownerUserId` only → resolve an EXISTING billing account already associated with that user's earnings/payout accounts. Creation requires an `orgId` anchor because a billing account is always org-scoped. */
20631
20689
  export type ResolveBillingAccountInput = {
20632
20690
  /** Opaque org id that anchors the billing account. When present the org's default billing account is resolved-or-created. */