@oxy.so/contracts 4.11.0 → 4.13.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/cjs/.tsbuildinfo +1 -1
- package/dist/cjs/accountGraph.js +15 -0
- package/dist/cjs/avatarCharacter.js +120 -0
- package/dist/cjs/index.js +24 -14
- package/dist/cjs/inference/identifiers.js +14 -1
- package/dist/cjs/inference/routingPolicy.js +17 -0
- package/dist/cjs/inference/usage.js +8 -0
- package/dist/cjs/inference/version.js +1 -1
- package/dist/cjs/recommendations.js +3 -0
- package/dist/cjs/userResponse.js +7 -0
- package/dist/esm/.tsbuildinfo +1 -1
- package/dist/esm/accountGraph.js +15 -0
- package/dist/esm/avatarCharacter.js +115 -0
- package/dist/esm/index.js +4 -1
- package/dist/esm/inference/identifiers.js +13 -0
- package/dist/esm/inference/routingPolicy.js +18 -1
- package/dist/esm/inference/usage.js +9 -1
- package/dist/esm/inference/version.js +1 -1
- package/dist/esm/recommendations.js +3 -0
- package/dist/esm/userResponse.js +7 -0
- package/dist/types/.tsbuildinfo +1 -1
- package/dist/types/accountGraph.d.ts +15 -4
- package/dist/types/accountSubject.d.ts +4 -4
- package/dist/types/agency.d.ts +44 -44
- package/dist/types/avatarCharacter.d.ts +57 -0
- package/dist/types/deviceDirectory.d.ts +66 -66
- package/dist/types/email/messages.d.ts +22 -22
- package/dist/types/externalIdentity.d.ts +11 -4
- package/dist/types/index.d.ts +4 -2
- package/dist/types/inference/accountBilling.d.ts +2 -2
- package/dist/types/inference/decisions.d.ts +20 -0
- package/dist/types/inference/identifiers.d.ts +14 -0
- package/dist/types/inference/realtime.d.ts +18 -0
- package/dist/types/inference/request.d.ts +54 -0
- package/dist/types/inference/routingPolicy.d.ts +10 -0
- package/dist/types/inference/usage.d.ts +12 -0
- package/dist/types/inference/version.d.ts +1 -1
- package/dist/types/recommendations.d.ts +12 -0
- package/dist/types/userResponse.d.ts +100 -2
- package/package.json +1 -1
package/dist/cjs/accountGraph.js
CHANGED
|
@@ -16,6 +16,7 @@ exports.isSelectableAccountCategoryId = isSelectableAccountCategoryId;
|
|
|
16
16
|
exports.newlyAddedRetiredCategories = newlyAddedRetiredCategories;
|
|
17
17
|
exports.kindAcceptsAccountCategories = kindAcceptsAccountCategories;
|
|
18
18
|
const zod_1 = require("zod");
|
|
19
|
+
const avatarCharacter_1 = require("./avatarCharacter");
|
|
19
20
|
const username_1 = require("./username");
|
|
20
21
|
/**
|
|
21
22
|
* The union is spelled out above and the array proves coverage BOTH ways
|
|
@@ -475,8 +476,22 @@ exports.createAccountRequestSchema = zod_1.z
|
|
|
475
476
|
* remedy must not either.
|
|
476
477
|
*/
|
|
477
478
|
isPrivateAccount: zod_1.z.boolean().optional(),
|
|
479
|
+
/**
|
|
480
|
+
* The 3D avatar character of a `bot` — and ONLY of a bot (the refinement
|
|
481
|
+
* below). Optional on the wire: a bot created without one is given a look
|
|
482
|
+
* seeded from its handle (`avatarCharacterFor`), so every bot account has a
|
|
483
|
+
* character from birth and the owner customizes it afterwards.
|
|
484
|
+
*/
|
|
485
|
+
character: avatarCharacter_1.avatarCharacterSchema.optional(),
|
|
478
486
|
})
|
|
479
487
|
.superRefine((request, ctx) => {
|
|
488
|
+
if (request.character !== undefined && request.kind !== 'bot') {
|
|
489
|
+
ctx.addIssue({
|
|
490
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
491
|
+
path: ['character'],
|
|
492
|
+
message: 'Only a bot account carries an avatar character',
|
|
493
|
+
});
|
|
494
|
+
}
|
|
480
495
|
// The ONE place `kind` and `username` arrive in the same object, so it is the
|
|
481
496
|
// only place a wire schema CAN apply the per-kind half of the policy: a bot's
|
|
482
497
|
// handle must end in `bot`. Not a second rule — it asks
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* The 3D avatar character a `bot` account carries.
|
|
4
|
+
*
|
|
5
|
+
* ONE definition for the wire shape, its validator and the generator that picks
|
|
6
|
+
* a look for a new bot, shared by the Oxy API (which stores and serves it) and
|
|
7
|
+
* every client. It mirrors Bloom's flat `AvatarCharacter`
|
|
8
|
+
* (`@oxy.so/bloom/agent-avatar`).
|
|
9
|
+
*
|
|
10
|
+
* ## The vocabulary is Bloom's and is NOT enforced here
|
|
11
|
+
*
|
|
12
|
+
* Bloom is a React Native package this one cannot depend on, so the ids a
|
|
13
|
+
* character is made of are restated below as a curated SUBSET, only to PICK a
|
|
14
|
+
* look for a new bot ({@link avatarCharacterFor}). A STORED character is never
|
|
15
|
+
* checked against them: validating against a stale copy of somebody else's
|
|
16
|
+
* catalogue is how a working look starts being refused. What the schema checks
|
|
17
|
+
* is the SHAPE of what a client writes: only the keys a character has, each an
|
|
18
|
+
* id-like string, a `#rrggbb` paint, a spacing in range. The client resolves
|
|
19
|
+
* the ids and falls back on a default look for one it cannot draw.
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.AVATAR_PICKABLE_COLORS = exports.AVATAR_PICKABLE_SHAPES = exports.avatarCharacterSchema = exports.AVATAR_EYE_SPACING = void 0;
|
|
23
|
+
exports.parseAvatarCharacter = parseAvatarCharacter;
|
|
24
|
+
exports.avatarCharacterFor = avatarCharacterFor;
|
|
25
|
+
const zod_1 = require("zod");
|
|
26
|
+
const ID = /^[a-z][a-z0-9_]{0,39}$/;
|
|
27
|
+
const HEX = /^#[0-9a-fA-F]{6}$/;
|
|
28
|
+
/** Bounds of {@link AvatarCharacter.eyeSpacing}. */
|
|
29
|
+
exports.AVATAR_EYE_SPACING = { min: 0.5, max: 1.5 };
|
|
30
|
+
const idSchema = zod_1.z.string().regex(ID);
|
|
31
|
+
/**
|
|
32
|
+
* A character a client sends. `.strict()` so a misspelled field is a refusal
|
|
33
|
+
* now rather than a look that never takes effect. A character with nothing in
|
|
34
|
+
* it draws nothing: it needs a preset, or a shape and a paint.
|
|
35
|
+
*/
|
|
36
|
+
exports.avatarCharacterSchema = zod_1.z
|
|
37
|
+
.object({
|
|
38
|
+
preset: idSchema.optional(),
|
|
39
|
+
shape: idSchema.optional(),
|
|
40
|
+
eyes: idSchema.optional(),
|
|
41
|
+
eyewear: idSchema.optional(),
|
|
42
|
+
accessory: idSchema.optional(),
|
|
43
|
+
color: idSchema.optional(),
|
|
44
|
+
bodyColor: zod_1.z
|
|
45
|
+
.string()
|
|
46
|
+
.regex(HEX)
|
|
47
|
+
.transform((hex) => hex.toLowerCase())
|
|
48
|
+
.optional(),
|
|
49
|
+
eyeSpacing: zod_1.z
|
|
50
|
+
.number()
|
|
51
|
+
.finite()
|
|
52
|
+
.min(exports.AVATAR_EYE_SPACING.min)
|
|
53
|
+
.max(exports.AVATAR_EYE_SPACING.max)
|
|
54
|
+
.optional(),
|
|
55
|
+
})
|
|
56
|
+
.strict()
|
|
57
|
+
.refine((c) => c.preset !== undefined ||
|
|
58
|
+
(c.shape !== undefined && (c.color !== undefined || c.bodyColor !== undefined)), { message: 'A character needs a preset, or a shape and a color' });
|
|
59
|
+
/** The validated character, or `null` for anything that is not one. */
|
|
60
|
+
function parseAvatarCharacter(value) {
|
|
61
|
+
const parsed = exports.avatarCharacterSchema.safeParse(value);
|
|
62
|
+
return parsed.success ? parsed.data : null;
|
|
63
|
+
}
|
|
64
|
+
/** The parts a new bot's look is picked from: the plain, friendly shapes, in the editor's order. */
|
|
65
|
+
exports.AVATAR_PICKABLE_SHAPES = [
|
|
66
|
+
'rounded_triangle',
|
|
67
|
+
'capsule',
|
|
68
|
+
'rounded_head_two_ears',
|
|
69
|
+
'six_lobed_flower',
|
|
70
|
+
'heart',
|
|
71
|
+
'four_lobed_butterfly',
|
|
72
|
+
'circle_two_ears',
|
|
73
|
+
'twelve_scalloped_rosette',
|
|
74
|
+
'rounded_cube',
|
|
75
|
+
'rounded_diamond',
|
|
76
|
+
'slender',
|
|
77
|
+
'pocket',
|
|
78
|
+
'petal',
|
|
79
|
+
'star',
|
|
80
|
+
'cloud',
|
|
81
|
+
'shield',
|
|
82
|
+
'pebble',
|
|
83
|
+
'squircle',
|
|
84
|
+
];
|
|
85
|
+
/** Bloom's named paints. */
|
|
86
|
+
exports.AVATAR_PICKABLE_COLORS = [
|
|
87
|
+
'pink',
|
|
88
|
+
'orchid',
|
|
89
|
+
'violet',
|
|
90
|
+
'blue',
|
|
91
|
+
'cyan',
|
|
92
|
+
'teal',
|
|
93
|
+
'lime',
|
|
94
|
+
'yellow',
|
|
95
|
+
'coral',
|
|
96
|
+
];
|
|
97
|
+
/** A small, stable hash: the same seed always picks the same look. */
|
|
98
|
+
function hash(seed) {
|
|
99
|
+
let h = 2166136261;
|
|
100
|
+
for (let i = 0; i < seed.length; i++) {
|
|
101
|
+
h ^= seed.charCodeAt(i);
|
|
102
|
+
h = Math.imul(h, 16777619);
|
|
103
|
+
}
|
|
104
|
+
return h >>> 0;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* A look for a new bot, picked from its seed (its handle): a shape and a paint,
|
|
108
|
+
* plain oval eyes, nothing on its head. Stable — the same seed is the same look
|
|
109
|
+
* — and the owner changes it afterwards.
|
|
110
|
+
*/
|
|
111
|
+
function avatarCharacterFor(seed) {
|
|
112
|
+
const h = hash(seed);
|
|
113
|
+
return {
|
|
114
|
+
shape: exports.AVATAR_PICKABLE_SHAPES[h % exports.AVATAR_PICKABLE_SHAPES.length],
|
|
115
|
+
eyes: 'oval',
|
|
116
|
+
eyewear: 'none',
|
|
117
|
+
accessory: 'none',
|
|
118
|
+
color: exports.AVATAR_PICKABLE_COLORS[Math.floor(h / exports.AVATAR_PICKABLE_SHAPES.length) % exports.AVATAR_PICKABLE_COLORS.length],
|
|
119
|
+
};
|
|
120
|
+
}
|
package/dist/cjs/index.js
CHANGED
|
@@ -25,20 +25,21 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
25
25
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
26
26
|
};
|
|
27
27
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
-
exports.
|
|
29
|
-
exports.
|
|
30
|
-
exports.
|
|
31
|
-
exports.
|
|
32
|
-
exports.
|
|
33
|
-
exports.
|
|
34
|
-
exports.
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
-
exports.
|
|
41
|
-
exports.
|
|
28
|
+
exports.USER_PROFILE_COLOR_PRESETS = exports.themePreferenceSchema = exports.userRelationshipSchema = exports.userNameSchema = exports.NUMERIC_USERNAME_MESSAGE = exports.RESERVED_USERNAME_MESSAGE = exports.BOT_USERNAME_INVALID_MESSAGE = exports.USERNAME_INVALID_MESSAGE = exports.USERNAME_MAX_LENGTH = exports.USERNAME_MIN_LENGTH = exports.applyBotUsernameSuffix = exports.stripDisallowedUsernameCharacters = exports.isValidUsername = exports.usernameSchemaForAccountKind = exports.usernameSchema = exports.financialEffectAttributionSchema = exports.attributeFinancialEffect = exports.accountKindActsAsItself = exports.accountKindActorNature = exports.accountActorNatureSchema = exports.accountActorChainSchema = exports.accountActorChainFromSession = exports.KIND_INDEPENDENT_ACCOUNT_DIMENSIONS = exports.FINANCIAL_EFFECT_DIRECTIONS = exports.ACCOUNT_SUBJECT_CONTRACT_VERSION = exports.ACCOUNT_ACTOR_NATURES = exports.parseAvatarCharacter = exports.avatarCharacterSchema = exports.avatarCharacterFor = exports.AVATAR_PICKABLE_SHAPES = exports.AVATAR_PICKABLE_COLORS = exports.AVATAR_EYE_SPACING = exports.createAccountRequestSchema = exports.SELECTABLE_ACCOUNT_CATEGORY_IDS = exports.RETIRED_ACCOUNT_CATEGORY_IDS = exports.newlyAddedRetiredCategories = exports.MAX_ACCOUNT_CATEGORIES = exports.kindAcceptsAccountCategories = exports.isSelectableAccountCategoryId = exports.accountCategoryIdSchema = exports.accountCategoriesSchema = exports.ACCOUNT_CATEGORY_KINDS = exports.ACCOUNT_CATEGORY_IDS = exports.isOperatorSwitchTargetKind = exports.isDelegatedActAsEligibleKind = exports.isAccountKind = exports.childAccountKindSchema = exports.CHILD_ACCOUNT_KINDS = exports.accountKindSchema = exports.ACCOUNT_KINDS = void 0;
|
|
29
|
+
exports.exportUsageReservationSchema = exports.exportLedgerEntrySchema = exports.exportUsageReceiptSchema = exports.exportAttestationSchema = exports.authMethodsResponseSchema = exports.authMethodEntrySchema = exports.domainVerificationInstructionsSchema = exports.resourceDomainOwnershipResponseSchema = exports.resourceDomainOwnershipRequestSchema = exports.domainVerificationRequestSchema = exports.verifiedDomainSchema = exports.signedRecordEnvelopeSchema = exports.didDocumentSchema = exports.didServiceSchema = exports.verificationMethodSchema = exports.appAffinityEventsIngestSchema = exports.appAffinityEventSchema = exports.appAffinityEventTypeSchema = exports.appUserSignalIngestSchema = exports.appInterestInputSchema = exports.appEndorsementInputSchema = exports.recommendationResponseSchema = exports.recommendationItemSchema = exports.recommendationCountSchema = exports.recommendationRequestSchema = exports.recommendationSignalWeightsSchema = exports.recommendationBoostSchema = exports.recommendationExcludeTypeSchema = exports.oxyUserInvalidationEventSchema = exports.isPublishedOxyUserChangeReason = exports.OXY_PUBLISHED_USER_CHANGE_REASONS = exports.OXY_USER_CHANGE_REASONS = exports.OXY_USER_INVALIDATION_CHANNEL = exports.inboxEmailPushDataSchema = exports.INBOX_EMAIL_PUSH_TYPE = exports.INBOX_EMAIL_PUSH_CHANNEL = exports.IDENTITY_APPROVAL_PUSH_CHANNEL = exports.commonsDenyReasonSchema = exports.COMMONS_DENY_REASONS = exports.sessionStatusSchema = exports.publicApplicationSchema = exports.applicationTypeSchema = exports.safeParseContract = exports.resolveUserId = exports.deviceLinkedSessionsResponseSchema = exports.deviceLinkedSessionSchema = exports.currentUserResponseSchema = exports.userProfileUpdateSchema = exports.userResponseSchema = exports.dateOfBirthSchema = void 0;
|
|
30
|
+
exports.MODERATION_DECISION_STATUSES = exports.MODERATION_ATTRIBUTIONS = exports.MODERATION_FINDING_SCOPES = exports.MODERATION_SEVERITIES = exports.isFullReputationBalance = exports.awardReputationSchema = exports.reputationInfluenceResultSchema = exports.reputationLeaderboardEntrySchema = exports.reputationLeaderboardUserSchema = exports.reputationRulesResponseSchema = exports.reputationRuleSchema = exports.reputationBalanceSchema = exports.reputationBalanceSummarySchema = exports.reputationReliabilitySchema = exports.reputationInfluenceSchema = exports.reputationBalanceBreakdownSchema = exports.reputationTransactionSchema = exports.reputationInfluenceContextSchema = exports.reputationTargetEntityTypeSchema = exports.trustTierSchema = exports.reputationTransactionStatusSchema = exports.reputationCategorySchema = exports.REPUTATION_INFLUENCE_CONTEXTS = exports.REPUTATION_TARGET_ENTITY_TYPES = exports.TRUST_TIERS = exports.REPUTATION_TRANSACTION_STATUSES = exports.REPUTATION_CATEGORIES = exports.credentialVerifyResultSchema = exports.credentialListResultSchema = exports.credentialIssueResultSchema = exports.verifiableCredentialResponseSchema = exports.credentialRecordSchema = exports.vouchResultSchema = exports.personhoodStatusResultSchema = exports.personhoodBreakdownSchema = exports.personhoodVouchRecordSchema = exports.validationVoteResultSchema = exports.validationRequestSummarySchema = exports.validationOpenResultSchema = exports.validationOpenRequestSchema = exports.validationVerdictRecordSchema = exports.realLifeAttestationResultSchema = exports.realLifeAttestationRecordSchema = exports.signedPublicCardSchema = exports.publicCardSchema = exports.logPageResponseSchema = exports.chainHeadResponseSchema = exports.oxySignedRecordTypeSchema = exports.exportBundleSchema = exports.exportFinancialSectionSchema = void 0;
|
|
31
|
+
exports.deviceBackgroundTokenRequestSchema = exports.deviceBackgroundCredentialResponseSchema = exports.deviceTokenMintResponseSchema = exports.deviceTokenMintRequestSchema = exports.deviceSessionSyncSchema = exports.activeTokenSchema = exports.deviceSessionStateSchema = exports.sessionAccountSchema = exports.applicationModerationTrustSchema = exports.reputationContextualInfluenceSchema = exports.reputationReviewingSchema = exports.reputationReportingSchema = exports.reputationConductSchema = exports.reputationContributionSchema = exports.reputationPersonhoodSchema = exports.identityBindingSchema = exports.registerIdentityBindingSchema = exports.reverseModerationEffectResultSchema = exports.applyModerationDecisionResultSchema = exports.moderationEffectSchema = exports.reverseModerationEffectSchema = exports.finalizeModerationDecisionSchema = exports.moderationDecisionEventSchema = exports.moderationPolicyVersionsSchema = exports.moderationDecisionEventSubjectSchema = exports.moderationFindingSchema = exports.applicationModerationStandingSchema = exports.identityBindingStatusSchema = exports.identityBindingTypeSchema = exports.personhoodStatusSchema = exports.contributionTierSchema = exports.conductStandingSchema = exports.conductStrikeStatusSchema = exports.moderationEffectSkipReasonSchema = exports.moderationEffectStatusSchema = exports.moderationEffectTypeSchema = exports.moderationDecisionStatusSchema = exports.moderationAttributionSchema = exports.moderationFindingScopeSchema = exports.moderationSeveritySchema = exports.APPLICATION_MODERATION_STANDINGS = exports.IDENTITY_BINDING_STATUSES = exports.IDENTITY_BINDING_TYPES = exports.PERSONHOOD_STATUSES = exports.CONTRIBUTION_TIERS = exports.CONDUCT_STANDINGS = exports.CONDUCT_STRIKE_STATUSES = exports.MODERATION_EFFECT_SKIP_REASONS = exports.MODERATION_EFFECT_STATUSES = exports.MODERATION_EFFECT_TYPES = void 0;
|
|
32
|
+
exports.sha256HexSchema = exports.updateAssetStatusSchema = exports.updateStatusSchema = exports.updatePlatformSchema = exports.identityRootStatusSchema = exports.identityProofChallengeResponseSchema = exports.identityProofChallengeRequestSchema = exports.identityProofSchema = exports.buildIdentityProofMessage = exports.canonicalJson = exports.IDENTITY_ERROR_CODES = exports.IDENTITY_PROOF_ACTION_VALUES = exports.IDENTITY_PROOF_ACTIONS = exports.IDENTITY_PROOF_CHALLENGE_TTL_MS = exports.IDENTITY_PROOF_AUDIENCE = exports.IDENTITY_PROOF_DOMAIN = exports.IDENTITY_PROOF_VERSION = exports.backupStatusResponseSchema = exports.backupUploadRequestSchema = exports.encryptedBackupEnvelopeSchema = exports.backupLookupIdSchema = exports.rotateKeyCompleteResponseSchema = exports.rotateKeyCompleteRequestSchema = exports.rotateKeyChallengeResponseSchema = exports.loginResultSchema = exports.mcpOAuthConsentResponseSchema = exports.mcpOAuthClientInfoResponseSchema = exports.mcpOAuthConsentContextSchema = exports.mcpOAuthWriteActionSchema = exports.mcpOAuthClientApplicationSchema = exports.oauthAuthorizeCodeResponseSchema = exports.oauthConsentDecisionSchema = exports.deviceDirectorySyncSchema = exports.deviceActivateResponseSchema = exports.deviceActivateRequestSchema = exports.deviceDirectorySchema = exports.devicePrincipalSchema = exports.deviceAccountContextSchema = exports.deviceDirectoryProfileSchema = exports.deviceContextRelationshipSchema = exports.sessionAccountsChangedEventSchema = exports.sessionAccountsChangedReasonSchema = exports.SESSION_ACCOUNTS_CHANGED_EVENT = exports.deviceJoinResponseSchema = exports.deviceJoinRequestSchema = exports.deviceJoinCodeResponseSchema = exports.deviceJoinCodeRequestSchema = exports.deviceRegisterResponseSchema = exports.deviceProofSchema = exports.deviceBackgroundTokenResponseSchema = void 0;
|
|
33
|
+
exports.emailSignInConfirmRequestSchema = exports.emailSignInStartResponseSchema = exports.emailSignInStartRequestSchema = exports.secondFactorCodeSchema = exports.newPasswordSchema = exports.passwordInputSchema = exports.signInIdentifierSchema = exports.SIGN_IN_ERROR_CODES = exports.TOTP_BACKUP_CODE_COUNT = exports.TOTP_PERIOD_SECONDS = exports.TOTP_DIGITS = exports.PASSWORD_MAX_LENGTH = exports.PASSWORD_MIN_LENGTH = exports.SIGNIN_SECOND_FACTOR_MAX_ATTEMPTS = exports.SIGNIN_SECOND_FACTOR_TTL_MS = exports.EMAIL_SIGNIN_LINK_TTL_MS = exports.emailVerificationConfirmResponseSchema = exports.emailVerificationConfirmRequestSchema = exports.emailVerificationStartResponseSchema = exports.emailVerificationStartRequestSchema = exports.emailTicketSchema = exports.emailAddressSchema = exports.EMAIL_VERIFICATION_ERROR_CODES = exports.EMAIL_TICKET_TTL_MS = exports.EMAIL_CODE_MAX_ATTEMPTS = exports.EMAIL_CODE_TTL_MS = exports.EMAIL_CODE_LENGTH = exports.EMAIL_VERIFICATION_PURPOSES = exports.updateRolloutPatchSchema = exports.promoteRequestSchema = exports.rollbackToEmbeddedRequestSchema = exports.rollbackRequestSchema = exports.updateListResponseSchema = exports.channelListResponseSchema = exports.channelSchema = exports.rollbackToEmbeddedEntrySchema = exports.createUpdateResponseSchema = exports.updateSchema = exports.createUpdateRequestSchema = exports.updateAssetRefSchema = exports.assetCompleteResponseSchema = exports.assetCompleteResultItemSchema = exports.assetCompleteRequestSchema = exports.assetInitResponseSchema = exports.assetUploadTicketSchema = exports.assetInitRequestSchema = exports.assetInitItemSchema = exports.rolloutPercentSchema = exports.runtimeVersionSchema = exports.channelNameSchema = void 0;
|
|
34
|
+
exports.sha256DigestSchema = exports.inferenceHttpsUrlSchema = exports.inferenceDateSchema = exports.inferenceTimestampSchema = exports.inferenceEnvironmentSchema = exports.idempotencyKeySchema = exports.generationIdSchema = exports.requestIdSchema = exports.oxyCredentialIdSchema = exports.oxyApplicationIdSchema = exports.delegatedUserIdSchema = exports.oxyAccountIdSchema = exports.INFERENCE_CONTRACT_VERSION = exports.transparencyCheckpointListSchema = exports.transparencyInclusionProofSchema = exports.transparencyCheckpointSchema = exports.transparencyAnchorSchema = exports.transparencyCheckpointSignatureSchema = exports.identityLinkCompleteRequestSchema = exports.identityLinkProofRequestSchema = exports.identityLinkStateSchema = exports.identityLinkCreateResponseSchema = exports.parseIdentityLinkQrPayload = exports.buildIdentityLinkQrPayload = exports.identityLinkIdSchema = exports.IDENTITY_LINK_QR_PREFIX = exports.IDENTITY_LINK_STATUSES = exports.totpBackupCodesResponseSchema = exports.totpReauthRequestSchema = exports.totpConfirmRequestSchema = exports.totpEnrollResponseSchema = exports.signInMethodsSchema = exports.passwordSetRequestSchema = exports.reauthEmailStartRequestSchema = exports.REAUTH_ACTIONS = exports.emailReauthProofSchema = exports.reauthProofSchema = exports.isSecondFactorRequired = exports.signUpRequestSchema = exports.secondFactorRequiredSchema = exports.secondFactorSignInRequestSchema = exports.passwordSignInRequestSchema = exports.emailSignInPendingSchema = exports.emailSignInLinkResponseSchema = exports.emailSignInLinkRequestSchema = exports.emailSignInCollectRequestSchema = exports.EMAIL_SIGNIN_LONG_CODE_LENGTH = exports.EMAIL_SIGNIN_LONG_CODE_ALPHABET = exports.normalizeEmailSignInCode = exports.emailSignInCodeSchema = void 0;
|
|
35
|
+
exports.realtimeSessionTransportSchema = exports.realtimeSessionKindSchema = exports.inferenceApiFormatSchema = exports.modelPowerClassSchema = exports.powerLevelSchema = exports.reasoningEffortSchema = exports.inferenceOutputModalitySchema = exports.inferenceModalitySchema = exports.priceSnapshotSchema = exports.priceVersionSchema = exports.priceVersionStatusSchema = exports.embeddingResponseSchema = exports.embeddingFailureSchema = exports.embeddingSuccessSchema = exports.embeddingUsageSchema = exports.embeddingVectorSchema = exports.inferenceErrorSchema = exports.providerErrorPassthroughSchema = exports.safeErrorTextSchema = exports.upstreamErrorCategorySchema = exports.inferenceErrorCodeSchema = exports.NON_RETRYABLE_INFERENCE_ERROR_CODES = exports.INFERENCE_ERROR_CODES = exports.inferenceAttributionSchema = exports.authenticatedPrincipalSchema = exports.billingPrincipalSchema = exports.inferenceScopeSchema = exports.INFERENCE_SCOPES = exports.unitPriceSchema = exports.usageQuantitySchema = exports.usageSourceSchema = exports.USAGE_SOURCES = exports.usageUnitSchema = exports.USAGE_UNITS = exports.moneySchema = exports.exactDecimalSchema = exports.INFERENCE_MONEY_SCALE = exports.currencyCodeSchema = exports.RESERVED_ALIA_PUBLISHER = exports.inferenceFundingTierSchema = exports.inferenceRegionSchema = exports.deploymentIdSchema = exports.inferenceProviderSlugSchema = exports.routingProfileSlugSchema = exports.routingProfileIdSchema = exports.modelReferenceSchema = exports.modelRevisionLabelSchema = exports.modelIdSchema = exports.modelSlugSchema = exports.publisherSlugSchema = void 0;
|
|
36
|
+
exports.toolChoiceSchema = exports.toolDefinitionSchema = exports.inferenceReasoningSchema = exports.samplingParametersSchema = exports.inferenceInputSchema = exports.inferenceMessageSchema = exports.inferenceMessageRoleSchema = exports.inferenceToolCallSchema = exports.inferenceContentPartSchema = exports.inferenceContentSourceSchema = exports.modelDocumentationSchema = exports.modelReleaseIngestionResultSchema = exports.modelReleaseIngestionRequestSchema = exports.modelLineDeclarationSchema = exports.modelGpaiDocumentationSchema = exports.modelDownstreamDocumentationSchema = exports.SYSTEMIC_RISK_COMPUTE_THRESHOLD_FLOPS = exports.trainingComputeFlopsSchema = exports.modelSystemicRiskTierSchema = exports.modelDistributionMethodSchema = exports.aliaModelReleaseManifestSchema = exports.aliaReleaseSignatureSchema = exports.aliaReleaseArtifactSchema = exports.authorizedRouteSchema = exports.effectiveSameModelDeployment = exports.routingPolicyReferenceSchema = exports.routingPolicySchema = exports.routingFallbackPolicySchema = exports.routingPolicyScopeSchema = exports.routingTargetSchema = exports.modelCatalogueEntrySchema = exports.catalogueServingProviderSummarySchema = exports.cataloguePublisherSummarySchema = exports.routingProfileSchema = exports.routingProfileCandidateSchema = exports.modelDeploymentSchema = exports.inferenceProviderSchema = exports.modelRevisionSchema = exports.catalogueModelSchema = exports.modelPublisherSchema = exports.modelSafetyMetadataSchema = exports.modelEvaluationResultSchema = exports.modelDeprecationSchema = exports.commercialPermissionSchema = exports.availabilityScopeSchema = exports.inferenceDataPolicySchema = exports.modelProvenanceSchema = exports.modelLicenseSchema = exports.modelCapabilitiesSchema = exports.modelRealtimeCapabilitiesSchema = void 0;
|
|
37
|
+
exports.realtimeSessionCloseCommandSchema = exports.realtimeSessionResumeCommandSchema = exports.realtimeResponseCancelCommandSchema = exports.realtimeResponseCreateCommandSchema = exports.realtimeInputAudioClearCommandSchema = exports.realtimeInputAudioCommitCommandSchema = exports.realtimeInputAudioAppendCommandSchema = exports.realtimeItemTruncateCommandSchema = exports.realtimeItemDeleteCommandSchema = exports.realtimeItemCreateCommandSchema = exports.realtimeSessionUpdateCommandSchema = exports.realtimeResponseParametersSchema = exports.realtimeConversationItemSchema = exports.realtimeContentPartSchema = exports.realtimeSessionRequestSchema = exports.realtimeClientMetadataSchema = exports.realtimeSessionLimitsSchema = exports.realtimeSessionConfigUpdateSchema = exports.realtimeSessionConfigSchema = exports.realtimeTranslationSchema = exports.realtimeInputTranscriptionSchema = exports.realtimeTurnDetectionSchema = exports.realtimeOutputModalitySchema = exports.realtimeAudioFormatSchema = exports.realtimeResponseIdSchema = exports.realtimeItemIdSchema = exports.realtimeCommandIdSchema = exports.MAX_REALTIME_RESUME_WINDOW_MS = exports.MAX_REALTIME_SESSION_AUDIO_BYTES = exports.MAX_REALTIME_SESSION_DURATION_MS = exports.MAX_REALTIME_AUDIO_FRAME_BASE64_LENGTH = exports.inferenceStreamEventSchema = exports.inferenceStreamDoneEventSchema = exports.inferenceFinishReasonSchema = exports.inferenceStreamErrorEventSchema = exports.inferenceStreamRouteSwitchEventSchema = exports.inferenceRouteSwitchReasonSchema = exports.inferenceRouteSwitchDetailSchema = exports.inferenceStreamUsageEventSchema = exports.inferenceStreamToolCallEventSchema = exports.inferenceStreamAudioEventSchema = exports.MAX_INFERENCE_AUDIO_BYTES = exports.inferenceAudioMediaTypeSchema = exports.inferenceStreamDeltaEventSchema = exports.inferenceStreamStartEventSchema = exports.inferenceAudioOutputParametersSchema = exports.inferenceSpeechParametersSchema = exports.inferenceRequestSchema = exports.clientRequestMetadataSchema = exports.responseFormatSchema = void 0;
|
|
38
|
+
exports.kaanaCredentialAppliedOutcomeSchema = exports.kaanaCredentialOutcomeRequestSchema = exports.kaanaCredentialRevokeOutcomeRequestSchema = exports.kaanaCredentialRotateOutcomeRequestSchema = exports.kaanaCredentialCreateOutcomeRequestSchema = exports.kaanaCredentialMutationSchema = exports.kaanaCredentialRevokeMutationSchema = exports.kaanaCredentialRotateMutationSchema = exports.kaanaCredentialCreateMutationSchema = exports.kaanaCredentialIdentitySchema = exports.kaanaCredentialOperationActionSchema = exports.kaanaCredentialOperationIdSchema = exports.kaanaCredentialHandleSchema = exports.providerConnectionScopeSchema = exports.usageRefundSchema = exports.usageRefundReasonSchema = exports.usageRefundSubjectSchema = exports.usageReceiptSchema = exports.normalizedUsageReportSchema = exports.inferenceRequestOutcomeSchema = exports.usageReservationSchema = exports.usageReservationStatusSchema = exports.usageReservationRequestSchema = exports.realtimeServerEventSchema = exports.realtimeSessionClosedEventSchema = exports.realtimeSessionCloseReasonSchema = exports.realtimeErrorEventSchema = exports.realtimeResponseDoneEventSchema = exports.realtimeResponseStatusSchema = exports.realtimeToolCallEventSchema = exports.realtimeTextDeltaEventSchema = exports.realtimeTranscriptDoneEventSchema = exports.realtimeTranscriptDeltaEventSchema = exports.realtimeTranscriptSourceSchema = exports.realtimeOutputAudioDoneEventSchema = exports.realtimeOutputAudioDeltaEventSchema = exports.realtimeResponseCreatedEventSchema = exports.realtimeInputAudioClearedEventSchema = exports.realtimeInputAudioCommittedEventSchema = exports.realtimeSpeechStoppedEventSchema = exports.realtimeSpeechStartedEventSchema = exports.realtimeItemTruncatedEventSchema = exports.realtimeItemDeletedEventSchema = exports.realtimeItemDoneEventSchema = exports.realtimeItemAddedEventSchema = exports.realtimeCommandAcceptedEventSchema = exports.realtimeSessionResumedEventSchema = exports.realtimeSessionUpdatedEventSchema = exports.realtimeSessionCreatedEventSchema = exports.realtimeClientCommandSchema = void 0;
|
|
39
|
+
exports.inferenceEconomicTreatmentSchema = exports.INFERENCE_ECONOMIC_TREATMENTS = exports.productEntitlementSchema = exports.costCenterSpendSchema = exports.costCenterSchema = exports.costCenterStatusSchema = exports.COST_CENTER_STATUSES = exports.payAsYouGoEntitlementSchema = exports.productPlanSchema = exports.planAllowanceSchema = exports.LIVE_PRODUCT_PLAN_STATUSES = exports.productPlanStatusSchema = exports.PRODUCT_PLAN_STATUSES = exports.reconciliationReportSchema = exports.reconciliationRunSchema = exports.reconciliationDiscrepancySchema = exports.reconciliationRunStatusSchema = exports.RECONCILIATION_RUN_STATUSES = exports.reconciliationDiscrepancyKindSchema = exports.RECONCILIATION_DISCREPANCY_KINDS = exports.autoRechargeAttemptSchema = exports.autoRechargeStatusSchema = exports.AUTO_RECHARGE_STATUSES = exports.externalPaymentSchema = exports.externalPaymentKindSchema = exports.EXTERNAL_PAYMENT_KINDS = exports.externalPaymentProviderSchema = exports.EXTERNAL_PAYMENT_PROVIDERS = exports.billingInvoiceSchema = exports.billingInvoiceStatusSchema = exports.BILLING_INVOICE_STATUSES = exports.accountBillingStateSchema = exports.billingProfileSchema = exports.autoRechargeSchema = exports.billingProfileStatusSchema = exports.BILLING_PROFILE_STATUSES = exports.billingModeSchema = exports.BILLING_MODES = exports.providerConnectionSchema = exports.providerConnectionStatusSchema = exports.providerConnectionValidationSchema = exports.providerCredentialCustodyStateSchema = exports.providerCredentialValidationDeploymentSchema = exports.providerCredentialValidationOperationSchema = exports.kaanaCredentialValidationOutcomeSchema = exports.kaanaCredentialValidationFailureCodeSchema = exports.kaanaCredentialValidationOutcomeStateSchema = exports.kaanaCredentialValidationTaskSchema = exports.kaanaCredentialOutcomeSchema = exports.kaanaCredentialConflictOutcomeSchema = void 0;
|
|
40
|
+
exports.inboxNaturalSearchResponseSchema = exports.inboxInferenceTextResponseSchema = exports.inboxMessageInferenceParamsSchema = exports.inboxNaturalSearchRequestSchema = exports.INBOX_DAILY_BRIEF_SECTIONS = exports.inboxDailyBriefResponseSchema = exports.inboxDailyBriefRequestSchema = exports.inboxComposeRequestSchema = exports.emailAgentContextSchema = exports.emailContextMessageSchema = exports.emailContextMailboxSchema = exports.emailContextAddressSchema = exports.resolveCatalogInvocation = exports.matchCatalogInvocation = exports.findOverlappingCatalogInvocations = exports.catalogInvocationTemplatesEquivalent = exports.catalogInvocationsOverlap = exports.catalogInvocationPathParameters = exports.normalizedAppEventSchema = exports.catalogRegistrationSchema = exports.appCapabilityCatalogSchema = exports.catalogEventSchema = exports.catalogToolSchema = exports.auditEventSchema = exports.auditResultSchema = exports.policyDecisionSchema = exports.invocationPrincipalSchema = exports.capabilityTicketClaimsSchema = exports.automationDefinitionSchema = exports.automationDataFlowSchema = exports.automationActorSelectionSchema = exports.automationTriggerSchema = exports.delegationGrantSchema = exports.capabilityTicketRequestSchema = exports.capabilityCoordinatorSchema = exports.executionAuthorizationRefSchema = exports.capabilityCatalogBindingSchema = exports.grantLimitSchema = exports.toolGrantOverrideSchema = exports.resourceRefSchema = exports.foregroundExecutionAuthorizationInputSchema = exports.executionActorRefSchema = exports.actorRefSchema = exports.capabilityPackageSchema = exports.autonomyLevelSchema = exports.CAPABILITY_PACKAGES = exports.AUTONOMY_LEVELS = exports.costCenterUsageSchema = exports.providerCostSourceSchema = exports.PROVIDER_COST_SOURCES = void 0;
|
|
41
|
+
exports.productSubscriptionCancellationResultSchema = exports.cancelProductSubscriptionSchema = exports.subscriptionCreditGrantsResponseSchema = exports.subscriptionCreditGrantSchema = exports.productSubscriptionsResponseSchema = exports.productSubscriptionSummarySchema = exports.isLoopbackOrigin = exports.inputSatisfiesCapabilityLimits = exports.canonicalCapabilityJson = exports.meteredGenerationSchema = exports.subjectProductAccessSchema = exports.productOfferSegmentSchema = exports.subjectProductGrantSnapshotSchema = exports.productAccessGrantSchema = exports.productSubscriptionSourceSchema = exports.productOfferSchema = exports.productBenefitSchema = exports.subjectProductAccessQuerySchema = exports.productDefinitionSchema = exports.privateAutoInferenceRequestSchema = exports.privateAutoOperationId = exports.privateAutoInputSchema = exports.privateAutoExecutionSchema = exports.privateAutoSourceApprovalSchema = exports.privateAutoPrincipalSchema = exports.PRIVATE_AUTO_QUESTION = exports.PRIVATE_AUTO_INSTRUCTIONS = exports.PRIVATE_AUTO_LIMITS = exports.PRIVATE_AUTO_REQUEST_ENVELOPE_VERSION = exports.PRIVATE_AUTO_EXECUTION_CONTRACT_VERSION = exports.scopedInferenceRequestSchema = exports.canonicalScopedExecutionJson = exports.scopedExecutionSchema = exports.scopedExecutionAudienceSchema = exports.SCOPED_REQUEST_ENVELOPE_VERSION = exports.SCOPED_EXECUTION_CONTRACT_VERSION = exports.decisionAnswersMatch = exports.decisionFitsGateway = exports.decisionInputBudget = exports.decisionFailureSchema = exports.decisionSuccessSchema = exports.decisionResultSchema = exports.decisionAnswerSchema = exports.decisionRequestSchema = exports.decisionInputSchema = exports.decisionQuestionSchema = exports.decisionEffortSchema = exports.inboxInferenceStreamEventSchema = exports.inboxThreadSummaryResponseSchema = exports.inboxSmartRepliesResponseSchema = void 0;
|
|
42
|
+
exports.personalPlanCatalogueSchema = exports.personalPlanDisplayPriceSchema = void 0;
|
|
42
43
|
var accountGraph_1 = require("./accountGraph");
|
|
43
44
|
Object.defineProperty(exports, "ACCOUNT_KINDS", { enumerable: true, get: function () { return accountGraph_1.ACCOUNT_KINDS; } });
|
|
44
45
|
Object.defineProperty(exports, "accountKindSchema", { enumerable: true, get: function () { return accountGraph_1.accountKindSchema; } });
|
|
@@ -58,6 +59,13 @@ Object.defineProperty(exports, "newlyAddedRetiredCategories", { enumerable: true
|
|
|
58
59
|
Object.defineProperty(exports, "RETIRED_ACCOUNT_CATEGORY_IDS", { enumerable: true, get: function () { return accountGraph_1.RETIRED_ACCOUNT_CATEGORY_IDS; } });
|
|
59
60
|
Object.defineProperty(exports, "SELECTABLE_ACCOUNT_CATEGORY_IDS", { enumerable: true, get: function () { return accountGraph_1.SELECTABLE_ACCOUNT_CATEGORY_IDS; } });
|
|
60
61
|
Object.defineProperty(exports, "createAccountRequestSchema", { enumerable: true, get: function () { return accountGraph_1.createAccountRequestSchema; } });
|
|
62
|
+
var avatarCharacter_1 = require("./avatarCharacter");
|
|
63
|
+
Object.defineProperty(exports, "AVATAR_EYE_SPACING", { enumerable: true, get: function () { return avatarCharacter_1.AVATAR_EYE_SPACING; } });
|
|
64
|
+
Object.defineProperty(exports, "AVATAR_PICKABLE_COLORS", { enumerable: true, get: function () { return avatarCharacter_1.AVATAR_PICKABLE_COLORS; } });
|
|
65
|
+
Object.defineProperty(exports, "AVATAR_PICKABLE_SHAPES", { enumerable: true, get: function () { return avatarCharacter_1.AVATAR_PICKABLE_SHAPES; } });
|
|
66
|
+
Object.defineProperty(exports, "avatarCharacterFor", { enumerable: true, get: function () { return avatarCharacter_1.avatarCharacterFor; } });
|
|
67
|
+
Object.defineProperty(exports, "avatarCharacterSchema", { enumerable: true, get: function () { return avatarCharacter_1.avatarCharacterSchema; } });
|
|
68
|
+
Object.defineProperty(exports, "parseAvatarCharacter", { enumerable: true, get: function () { return avatarCharacter_1.parseAvatarCharacter; } });
|
|
61
69
|
var accountSubject_1 = require("./accountSubject");
|
|
62
70
|
Object.defineProperty(exports, "ACCOUNT_ACTOR_NATURES", { enumerable: true, get: function () { return accountSubject_1.ACCOUNT_ACTOR_NATURES; } });
|
|
63
71
|
Object.defineProperty(exports, "ACCOUNT_SUBJECT_CONTRACT_VERSION", { enumerable: true, get: function () { return accountSubject_1.ACCOUNT_SUBJECT_CONTRACT_VERSION; } });
|
|
@@ -467,6 +475,8 @@ Object.defineProperty(exports, "routingProfileSlugSchema", { enumerable: true, g
|
|
|
467
475
|
Object.defineProperty(exports, "inferenceProviderSlugSchema", { enumerable: true, get: function () { return identifiers_1.inferenceProviderSlugSchema; } });
|
|
468
476
|
Object.defineProperty(exports, "deploymentIdSchema", { enumerable: true, get: function () { return identifiers_1.deploymentIdSchema; } });
|
|
469
477
|
Object.defineProperty(exports, "inferenceRegionSchema", { enumerable: true, get: function () { return identifiers_1.inferenceRegionSchema; } });
|
|
478
|
+
// The economic tier Oxy bounds a route by and Kaana reports (ADR 0038)
|
|
479
|
+
Object.defineProperty(exports, "inferenceFundingTierSchema", { enumerable: true, get: function () { return identifiers_1.inferenceFundingTierSchema; } });
|
|
470
480
|
Object.defineProperty(exports, "RESERVED_ALIA_PUBLISHER", { enumerable: true, get: function () { return identifiers_1.RESERVED_ALIA_PUBLISHER; } });
|
|
471
481
|
var money_1 = require("./inference/money");
|
|
472
482
|
// Exact money and metered units — never floats, units never money.
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* Decided in: docs/adr/0007-canonical-request-attribution.md, docs/adr/0008-catalogue-concept-separation.md.
|
|
20
20
|
*/
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.RESERVED_ALIA_PUBLISHER = exports.inferenceRegionSchema = exports.deploymentIdSchema = exports.inferenceProviderSlugSchema = exports.routingProfileIdSchema = exports.routingProfileSlugSchema = exports.modelReferenceSchema = exports.modelRevisionLabelSchema = exports.modelIdSchema = exports.modelSlugSchema = exports.publisherSlugSchema = exports.PADDED_BASE64_PATTERN = exports.sha256DigestSchema = exports.inferenceHttpsUrlSchema = exports.inferenceDateSchema = exports.inferenceTimestampSchema = exports.inferenceEnvironmentSchema = exports.idempotencyKeySchema = exports.generationIdSchema = exports.requestIdSchema = exports.oxyCredentialIdSchema = exports.oxyApplicationIdSchema = exports.delegatedUserIdSchema = exports.oxyAccountIdSchema = void 0;
|
|
22
|
+
exports.inferenceFundingTierSchema = exports.RESERVED_ALIA_PUBLISHER = exports.inferenceRegionSchema = exports.deploymentIdSchema = exports.inferenceProviderSlugSchema = exports.routingProfileIdSchema = exports.routingProfileSlugSchema = exports.modelReferenceSchema = exports.modelRevisionLabelSchema = exports.modelIdSchema = exports.modelSlugSchema = exports.publisherSlugSchema = exports.PADDED_BASE64_PATTERN = exports.sha256DigestSchema = exports.inferenceHttpsUrlSchema = exports.inferenceDateSchema = exports.inferenceTimestampSchema = exports.inferenceEnvironmentSchema = exports.idempotencyKeySchema = exports.generationIdSchema = exports.requestIdSchema = exports.oxyCredentialIdSchema = exports.oxyApplicationIdSchema = exports.delegatedUserIdSchema = exports.oxyAccountIdSchema = void 0;
|
|
23
23
|
const zod_1 = require("zod");
|
|
24
24
|
/* -------------------------------------------------------------------------- */
|
|
25
25
|
/* Principal identifiers */
|
|
@@ -224,3 +224,16 @@ exports.inferenceRegionSchema = zod_1.z
|
|
|
224
224
|
* this constant exists to be checked against.
|
|
225
225
|
*/
|
|
226
226
|
exports.RESERVED_ALIA_PUBLISHER = 'alia';
|
|
227
|
+
/**
|
|
228
|
+
* The economic tier of the provider capacity that funds a request, in the
|
|
229
|
+
* order Kaana spends it: `free` (costs nothing), `credit` (a promotional or
|
|
230
|
+
* trial grant, or a prepaid balance), `paid` (ordinary metered spend).
|
|
231
|
+
*
|
|
232
|
+
* Kaana owns provider keys, their economics and which key serves (Oxy ADR
|
|
233
|
+
* 0038, Kaana ADR 0001); Oxy owns what a customer may spend. The tier is the
|
|
234
|
+
* one economic fact the two exchange: Oxy BOUNDS a route by it
|
|
235
|
+
* (`maxFundingTier`), and Kaana REPORTS the tier that served
|
|
236
|
+
* (`normalizedUsageReportSchema.fundingTier`). No key id, label or price
|
|
237
|
+
* travels with it.
|
|
238
|
+
*/
|
|
239
|
+
exports.inferenceFundingTierSchema = zod_1.z.enum(['free', 'credit', 'paid']);
|
|
@@ -295,6 +295,16 @@ const authorizedRouteFields = {
|
|
|
295
295
|
modelReference: identifiers_1.modelReferenceSchema,
|
|
296
296
|
provider: identifiers_1.inferenceProviderSlugSchema,
|
|
297
297
|
regions: zod_1.z.array(identifiers_1.inferenceRegionSchema),
|
|
298
|
+
/**
|
|
299
|
+
* The dearest funding tier the data plane may spend on this route. Absent
|
|
300
|
+
* means no ceiling. Present, the data plane walks only provider keys whose
|
|
301
|
+
* STATED tier is at or below it — a key whose economics nobody stated is
|
|
302
|
+
* never admitted — and refuses the route rather than fall through to a
|
|
303
|
+
* dearer key. It is how Oxy authorizes a route only while credit funds it
|
|
304
|
+
* (Alia Pro and Ultra spend credits only, ADR 0038). Meaningless with a
|
|
305
|
+
* customer credential, which the provider bills to the customer.
|
|
306
|
+
*/
|
|
307
|
+
maxFundingTier: identifiers_1.inferenceFundingTierSchema.optional(),
|
|
298
308
|
/**
|
|
299
309
|
* Exact customer credential binding. Absence means a platform credential;
|
|
300
310
|
* presence names the immutable Kaana generation this route may use.
|
|
@@ -349,6 +359,13 @@ exports.authorizedRouteSchema = zod_1.z
|
|
|
349
359
|
.strict(),
|
|
350
360
|
])
|
|
351
361
|
.superRefine((route, ctx) => {
|
|
362
|
+
if (route.maxFundingTier !== undefined && route.customerProviderCredential !== undefined) {
|
|
363
|
+
ctx.addIssue({
|
|
364
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
365
|
+
path: ['maxFundingTier'],
|
|
366
|
+
message: 'a funding ceiling bounds platform keys; a customer credential is billed to the customer',
|
|
367
|
+
});
|
|
368
|
+
}
|
|
352
369
|
// Same rule as `modelDeploymentSchema`: a route serves specific weights. An
|
|
353
370
|
// unpinned entry would leave the data plane choosing a revision, which is
|
|
354
371
|
// the one substitution the customer never authorized by naming a model.
|
|
@@ -173,6 +173,14 @@ exports.normalizedUsageReportSchema = zod_1.z
|
|
|
173
173
|
deploymentId: identifiers_1.deploymentIdSchema,
|
|
174
174
|
/** How many allowed route switches occurred while serving this request. */
|
|
175
175
|
routeSwitches: zod_1.z.number().int().nonnegative().max(100),
|
|
176
|
+
/**
|
|
177
|
+
* The funding tier of the platform key that served the final attempt, as
|
|
178
|
+
* the data plane states it (ADR 0038). Absent when the key's economics
|
|
179
|
+
* were never stated, when a customer credential served, or when nothing
|
|
180
|
+
* was served. Oxy reads it to account for what the request cost the
|
|
181
|
+
* platform; it is never a key identity and never reaches a customer.
|
|
182
|
+
*/
|
|
183
|
+
fundingTier: identifiers_1.inferenceFundingTierSchema.optional(),
|
|
176
184
|
startedAt: identifiers_1.inferenceTimestampSchema,
|
|
177
185
|
completedAt: identifiers_1.inferenceTimestampSchema,
|
|
178
186
|
timeToFirstTokenMs: zod_1.z.number().int().nonnegative().safe().optional(),
|
|
@@ -102,4 +102,4 @@ exports.INFERENCE_CONTRACT_VERSION = void 0;
|
|
|
102
102
|
* change to, say, the catalogue reject every in-flight inference request; the
|
|
103
103
|
* per-shape `schemaVersion` is what a message is validated against.
|
|
104
104
|
*/
|
|
105
|
-
exports.INFERENCE_CONTRACT_VERSION = '3.
|
|
105
|
+
exports.INFERENCE_CONTRACT_VERSION = '3.8.0';
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.appAffinityEventsIngestSchema = exports.appAffinityEventSchema = exports.appAffinityEventTypeSchema = exports.appUserSignalIngestSchema = exports.appInterestInputSchema = exports.appEndorsementInputSchema = exports.recommendationResponseSchema = exports.recommendationItemSchema = exports.recommendationCountSchema = exports.recommendationRequestSchema = exports.recommendationSignalWeightsSchema = exports.recommendationBoostSchema = exports.recommendationExcludeTypeSchema = void 0;
|
|
16
16
|
const zod_1 = require("zod");
|
|
17
|
+
const avatarCharacter_1 = require("./avatarCharacter");
|
|
17
18
|
const userResponse_1 = require("./userResponse");
|
|
18
19
|
/** User-type filters a caller may exclude from the recommendation surface. */
|
|
19
20
|
exports.recommendationExcludeTypeSchema = zod_1.z.enum(['federated', 'agent', 'automated']);
|
|
@@ -80,6 +81,8 @@ exports.recommendationItemSchema = zod_1.z
|
|
|
80
81
|
username: zod_1.z.string().optional(),
|
|
81
82
|
name: userResponse_1.userNameSchema,
|
|
82
83
|
avatar: zod_1.z.string().nullable().optional(),
|
|
84
|
+
/** A bot's 3D avatar character; absent for every other kind. */
|
|
85
|
+
character: avatarCharacter_1.avatarCharacterSchema.optional(),
|
|
83
86
|
/** The account's accent colour, as on every profile; absent when unset. */
|
|
84
87
|
color: zod_1.z.string().optional(),
|
|
85
88
|
description: zod_1.z.string().nullable().optional(),
|
package/dist/cjs/userResponse.js
CHANGED
|
@@ -51,6 +51,7 @@ exports.USER_PROFILE_COLOR_PRESETS = [
|
|
|
51
51
|
const zod_1 = require("zod");
|
|
52
52
|
const identity_1 = require("./identity");
|
|
53
53
|
const accountGraph_1 = require("./accountGraph");
|
|
54
|
+
const avatarCharacter_1 = require("./avatarCharacter");
|
|
54
55
|
exports.userNameSchema = zod_1.z
|
|
55
56
|
.object({
|
|
56
57
|
first: zod_1.z.string().optional(),
|
|
@@ -227,6 +228,12 @@ exports.userResponseSchema = zod_1.z
|
|
|
227
228
|
* `user.accountCategories ?? []`.
|
|
228
229
|
*/
|
|
229
230
|
accountCategories: accountGraph_1.accountCategoriesSchema.optional(),
|
|
231
|
+
/**
|
|
232
|
+
* The 3D avatar character of a `kind: 'bot'` account — what Bloom's
|
|
233
|
+
* `Avatar` draws instead of a picture. Present ONLY on a bot's payload,
|
|
234
|
+
* never on a person's or an organization's, so those DTOs do not grow.
|
|
235
|
+
*/
|
|
236
|
+
character: avatarCharacter_1.avatarCharacterSchema.optional(),
|
|
230
237
|
/**
|
|
231
238
|
* The authenticated viewer's relationship to this profile. Present ONLY
|
|
232
239
|
* on single-profile fetches (`GET /profiles/username/:username`,
|