@closerepo/radar-contracts 3.0.0 → 4.0.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/index.d.ts CHANGED
@@ -6935,13 +6935,21 @@ declare function parseRadarCodexProgressChangesV3(value: unknown): RadarCodexPro
6935
6935
  declare const radarWebsiteOrigin = "https://radarultra.com";
6936
6936
  declare const radarWebsiteLocales: readonly ["zh-Hans", "zh-Hant", "en", "ja", "ko"];
6937
6937
  type RadarWebsiteLocale = typeof radarWebsiteLocales[number];
6938
+ declare const radarWebsiteLocaleSlugs: {
6939
+ readonly "zh-Hans": "zh-hans";
6940
+ readonly "zh-Hant": "zh-hant";
6941
+ readonly en: "en";
6942
+ readonly ja: "ja";
6943
+ readonly ko: "ko";
6944
+ };
6938
6945
  declare const radarWebsiteLocalePrefixes: {
6939
- readonly "zh-Hans": "/zh";
6946
+ readonly "zh-Hans": "/zh-hans";
6940
6947
  readonly "zh-Hant": "/zh-hant";
6941
6948
  readonly en: "";
6942
6949
  readonly ja: "/ja";
6943
6950
  readonly ko: "/ko";
6944
6951
  };
6952
+ declare const radarWebsiteLegacyChinesePrefix = "/zh";
6945
6953
  declare const radarWebsitePagePaths: {
6946
6954
  readonly reset: "/codex";
6947
6955
  readonly improvement: "/codex/28-day-challenge";
@@ -6961,6 +6969,8 @@ declare const radarCodexReleaseIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObj
6961
6969
  declare const radarCodexModelIdSchema: z.ZodString;
6962
6970
  /** Produces a canonical existing page; callers provide both the page and language explicitly. */
6963
6971
  declare function radarWebsitePageUrl(page: keyof typeof radarWebsitePagePaths, locale: RadarWebsiteLocale): string;
6972
+ /** Keeps browser push targets valid for installed workers; the website redirects the legacy Chinese URL. */
6973
+ declare function radarBrowserNotificationPageUrl(page: "reset" | "improvement", locale: RadarWebsiteLocale): string;
6964
6974
  /** Builds a shareable release URL after validating the product-specific version. */
6965
6975
  declare function radarCodexReleaseUrl(product: "app" | "cli", version: string, locale: RadarWebsiteLocale): string;
6966
6976
  /** Builds a model detail URL without allowing query, fragment or path injection. */
@@ -6990,6 +7000,8 @@ declare const radarNotificationTopicsSchema: z.ZodArray<z.ZodEnum<{
6990
7000
  improvement: "improvement";
6991
7001
  reset: "reset";
6992
7002
  }>>;
7003
+ /** Accepts only owned notification pages, including the published Chinese alias in historical notices. */
7004
+ declare const radarBrowserNotificationTargetUrlSchema: z.ZodURL;
6993
7005
  declare const radarNotificationTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6994
7006
  kind: z.ZodLiteral<"reset">;
6995
7007
  webUrl: z.ZodURL;
@@ -8902,4 +8914,4 @@ declare function compareRadarCommunityTrendingEntries(left: RadarCommunityTrendi
8902
8914
  /** The bilingual content contract intentionally serves English on all other website locales. */
8903
8915
  declare const radarCommunityTrendingSummary: (entry: RadarCommunityTrendingEntry, locale: RadarWebsiteLocale) => string;
8904
8916
  //#endregion
8905
- export { CreateRadarResetSourceErrorEnvelopeInputV2, RadarActivityFile, RadarActivityFileV2, RadarActivityFileV3, RadarActivityProgress, RadarActivityProgressV2, RadarActivityProgressV3, RadarActivityReactionId, RadarBrowserNotificationProjection, RadarBrowserSubscriptionFailure, RadarBrowserSubscriptionRead, RadarBrowserSubscriptionSave, RadarBrowserSubscriptionSaveV2, RadarBrowserSubscriptionView, RadarBrowserSubscriptionViewV2, RadarBrowserTopics, RadarBrowserTopicsV2, RadarCodexGuessChoice, RadarCodexGuessError, RadarCodexGuessSaveReq, RadarCodexGuessView, RadarCodexModel, RadarCodexModels, RadarCodexProgressChange, RadarCodexProgressChangeV2, RadarCodexProgressChangeV3, RadarCodexProgressChangesV1, RadarCodexProgressChangesV2, RadarCodexProgressChangesV3, RadarCodexProgressEntryV3, RadarCodexProgressEntryV5, RadarCodexProgressImprovementV5, RadarCodexProgressPostRoleV5, RadarCodexProgressPostV5, RadarCodexProgressResetEntryV5, RadarCodexProgressTitleV3, RadarCodexProgressV1, RadarCodexProgressV2, RadarCodexProgressV3, RadarCodexProgressV4, RadarCodexProgressV5, RadarCodexReleaseDirectory, RadarCodexReleaseMonth, RadarCodexReleaseNotes, RadarCodexTimePoint, RadarCommunityTrendingEntry, RadarCommunityTrendingLatest, RadarCommunityTrendingMonth, RadarImprovementEntry, RadarImprovementHead, RadarImprovementPage, RadarNotificationProjection, RadarNotificationTarget, RadarNotificationTask, RadarNotificationTasks, RadarNotificationTopic, RadarResetActionDetailV1, RadarResetActionDetailV2, RadarResetActionDetailV3, RadarResetActionItemV2, RadarResetActionSummaryV2, RadarResetActiveActionItemV2, RadarResetAnalysisV1, RadarResetClue, RadarResetClueSnapshot, RadarResetDetailChunkReferenceV2, RadarResetDetailChunkRequestV2, RadarResetDetailManifestV2, RadarResetDetailMultipartEncodeInputV2, RadarResetDetailMultipartParseInputV2, RadarResetDetailMultipartPartV2, RadarResetExportV1, RadarResetExportV2, RadarResetExportV3, RadarResetManagement, RadarResetPendingActionV1, RadarResetPendingActionV2, RadarResetPositiveDecimalV2, RadarResetPrimarySourceV1, RadarResetPublicActionV1, RadarResetPublicIdV2, RadarResetPublicRecordsV1, RadarResetPublicationHomeFactsV2, RadarResetPublicationRevisionAvailableV2, RadarResetPublicationTiming, RadarResetReadActionsRequestV2, RadarResetReadActionsSuccessV2, RadarResetReadChangesRequestV2, RadarResetReadChangesSuccessV2, RadarResetReadDetailBatchRequestV2, RadarResetReadHeadRequestV2, RadarResetReadHeadSuccessV2, RadarResetSafeCauseSnapshotV2, RadarResetSafeCauseValueV2, RadarResetSha256V2, RadarResetSnapshotAvailableV1, RadarResetSourceContractErrorInputV2, RadarResetSourceContractErrorV2, RadarResetSourceErrorCodeV2, RadarResetSourceErrorEnvelopeV2, RadarResetSourceErrorV2, RadarResetSourceTranslations, RadarResetStatisticsResponseV3, RadarResetStatisticsV1, RadarResetUInt64DecimalV2, RadarResetUtcTimestampV2, RadarTiboSourceStatus, RadarTitledActivityFile, RadarTitledActivityProgress, RadarWebsiteLocale, activeRadarResetClue, compareRadarCommunityTrendingEntries, compareRadarNotificationTasks, compareRadarResetActionDetailsV1, compareRadarResetUtcTimestampsV1, createRadarBrowserNotificationProjection, createRadarCodexProgressCalendar, createRadarNotificationProjection, createRadarResetSourceErrorEnvelopeV2, encodeRadarActivityFile, encodeRadarActivityFileV2, encodeRadarActivityFileV3, encodeRadarResetDetailMultipartV2, encodeRadarTitledActivityFile, formatRadarResetPositiveDecimalV2, formatRadarResetUInt64DecimalV2, initialRadarBrowserSubscription, initialRadarBrowserSubscriptionV2, parseRadarCodexModels, parseRadarCodexProgressChangeV3, parseRadarCodexProgressChangesV3, parseRadarCodexProgressV1, parseRadarCodexProgressV2, parseRadarCodexProgressV3, parseRadarCodexProgressV4, parseRadarCodexProgressV5, parseRadarCodexReleaseDirectory, parseRadarCodexReleaseMonth, parseRadarCodexReleaseNotes, parseRadarCommunityTrendingLatest, parseRadarCommunityTrendingMonth, parseRadarResetActionDetailV1, parseRadarResetActionDetailV2, parseRadarResetActionDetailV3, parseRadarResetActionSummaryV2, parseRadarResetAnalysisV1, parseRadarResetClueSnapshot, parseRadarResetDetailMultipartV2, parseRadarResetExportV1, parseRadarResetExportV2, parseRadarResetExportV3, parseRadarResetPendingActionV1, parseRadarResetPendingActionV2, parseRadarResetPositiveDecimalV2, parseRadarResetPublicationHomeFactsV2, parseRadarResetPublicationRevisionAvailableV2, parseRadarResetReadActionsRequestV2, parseRadarResetReadActionsSuccessV2, parseRadarResetReadChangesRequestV2, parseRadarResetReadChangesSuccessV2, parseRadarResetReadDetailBatchRequestV2, parseRadarResetReadHeadRequestV2, parseRadarResetReadHeadSuccessV2, parseRadarResetSnapshotAvailableV1, parseRadarResetSourceErrorEnvelopeV2, parseRadarResetUInt64DecimalV2, projectRadarBrowserSubscriptionSelection, projectRadarBrowserSubscriptionV1, projectRadarResetExportV1FromV2, projectRadarResetExportV3FromV2, projectRadarResetPrimarySourceV1, projectRadarResetPublicActionToV2, radarActivityEventIdSchema, radarActivityFileSchema, radarActivityFileUrl, radarActivityFileV2Schema, radarActivityFileV2Url, radarActivityFileV3Schema, radarActivityFileV3Url, radarActivityMaxBytes, radarActivityProgressSchema, radarActivityProgressV2Schema, radarActivityProgressV3Schema, radarActivityReactionCountsSchema, radarActivityReactionIdSchema, radarActivityReactionIds, radarBrowserNotificationProjectionSchema, radarBrowserNotificationTopicSchema, radarBrowserRegistrationSchema, radarBrowserSubscriptionErrorRes, radarBrowserSubscriptionFailureSchema, radarBrowserSubscriptionOperationSchema, radarBrowserSubscriptionReadReq, radarBrowserSubscriptionRes, radarBrowserSubscriptionSaveReq, radarBrowserSubscriptionSaveV2Req, radarBrowserSubscriptionV2Res, radarBrowserSubscriptionViewSchema, radarBrowserSubscriptionViewV2Schema, radarBrowserSubscriptionsPath, radarBrowserTopicsSchema, radarBrowserTopicsV2Schema, radarCodexGuessChoiceSchema, radarCodexGuessErrorSchema, radarCodexGuessSaveReqSchema, radarCodexGuessViewSchema, radarCodexModelIdSchema, radarCodexModelUrl, radarCodexModelsMaxBytes, radarCodexModelsPath, radarCodexModelsSchema, radarCodexProgressCalendar, radarCodexProgressChangeSchema, radarCodexProgressChangeV2Schema, radarCodexProgressChangeV3Schema, radarCodexProgressChangesV1Schema, radarCodexProgressChangesV2Schema, radarCodexProgressChangesV3Schema, radarCodexProgressEntrySchema, radarCodexProgressEntryV3Schema, radarCodexProgressEntryV5Schema, radarCodexProgressImprovementV5Schema, radarCodexProgressPostRoleV5Schema, radarCodexProgressPostV5Schema, radarCodexProgressPostsV5Schema, radarCodexProgressResetEntryV5Schema, radarCodexProgressScore, radarCodexProgressTitleV3Schema, radarCodexProgressV1Schema, radarCodexProgressV2MaxBytes, radarCodexProgressV2Schema, radarCodexProgressV3MaxBytes, radarCodexProgressV3Schema, radarCodexProgressV4MaxBytes, radarCodexProgressV4Schema, radarCodexProgressV5MaxBytes, radarCodexProgressV5Schema, radarCodexReleaseDirectoryMaxBytes, radarCodexReleaseDirectoryPath, radarCodexReleaseDirectorySchema, radarCodexReleaseIdentitySchema, radarCodexReleaseMonthMaxBytes, radarCodexReleaseMonthPath, radarCodexReleaseMonthSchema, radarCodexReleaseNotesMaxBytes, radarCodexReleaseNotesPath, radarCodexReleaseNotesSchema, radarCodexReleaseSectionsSchema, radarCodexReleaseUrl, radarCodexTimePointSchema, radarCommunityTrendingEntrySchema, radarCommunityTrendingKindSchema, radarCommunityTrendingLatestMaxBytes, radarCommunityTrendingLatestPath, radarCommunityTrendingLatestSchema, radarCommunityTrendingMonthMaxBytes, radarCommunityTrendingMonthPath, radarCommunityTrendingMonthSchema, radarCommunityTrendingPlatformSchema, radarCommunityTrendingSourceSchema, radarCommunityTrendingSourceStaleMs, radarCommunityTrendingSummary, radarCommunityTrendingTopicSchema, radarImprovementColumnPath, radarImprovementEligibilityReq, radarImprovementEligibilityRes, radarImprovementEntrySchema, radarImprovementErrorRes, radarImprovementHeadReq, radarImprovementHeadRes, radarImprovementPageMaxBytes, radarImprovementPageReq, radarImprovementPageRes, radarImprovementPageSize, radarNotificationProjectionSchema, radarNotificationTargetSchema, radarNotificationTaskPageSize, radarNotificationTaskSchema, radarNotificationTasksPath, radarNotificationTasksReq, radarNotificationTasksRes, radarNotificationTopicSchema, radarNotificationTopicsSchema, radarResetActionDetailV1Schema, radarResetActionDetailV2Schema, radarResetActionDetailV3Schema, radarResetActionItemV2Schema, radarResetActionPageMaxBytesV2, radarResetActionPageMaxItemsV2, radarResetActionSummaryV2Schema, radarResetActiveActionItemV2Schema, radarResetAnalysisV1Schema, radarResetAnalyzerContractVersionV1, radarResetAudienceValues, radarResetChangeCoverageV2Schema, radarResetChangePageMaxBytesV2, radarResetChangePageMaxItemsV2, radarResetClueLifetimeMs, radarResetClueMaxBytes, radarResetCluePath, radarResetClueSchema, radarResetClueSnapshotSchema, radarResetContractVersionV1, radarResetContractVersionV2, radarResetDetailBatchMaxBytesV2, radarResetDetailBatchMaxChunksV2, radarResetDetailChunkReferenceV2Schema, radarResetDetailChunkRequestV2Schema, radarResetDetailManifestV2Schema, radarResetEffectValues, radarResetExportV1Schema, radarResetExportV2Schema, radarResetExportV3Schema, radarResetKindNoticeV2Schema, radarResetManagementActionSchema, radarResetManagementOperationSchema, radarResetManagementResSchema, radarResetManualApplyReqSchema, radarResetManualCopySchema, radarResetManualDraftSchema, radarResetManualDraftSeedSchema, radarResetManualPreviewReqSchema, radarResetManualPreviewResSchema, radarResetManualResultResSchema, radarResetNoticeKindValues, radarResetPendingActionV1Schema, radarResetPendingActionV2Schema, radarResetPlanValues, radarResetPositiveDecimalV2Schema, radarResetProductValues, radarResetPublicActionV1Schema, radarResetPublicDataLimits, radarResetPublicIdV2Schema, radarResetPublicRecordsCorePath, radarResetPublicRecordsV1Schema, radarResetPublicationHomeFactsV2Schema, radarResetPublicationRevisionAvailableV2Schema, radarResetPublicationTimingSchema, radarResetReadActionsDataV2Schema, radarResetReadActionsRequestV2Schema, radarResetReadActionsSuccessV2Schema, radarResetReadChangesDataV2Schema, radarResetReadChangesRequestV2Schema, radarResetReadChangesSuccessV2Schema, radarResetReadDetailBatchRequestV2Schema, radarResetReadHeadDataV2Schema, radarResetReadHeadRequestV2Schema, radarResetReadHeadSuccessV2Schema, radarResetReasonBasisValues, radarResetReasonCategoryValues, radarResetSafeCauseSnapshotV2Schema, radarResetSeriesValues, radarResetSha256V2Schema, radarResetSnapshotAvailableV1Schema, radarResetSourceChangeV2Schema, radarResetSourceErrorCodeValuesV2, radarResetSourceErrorEnvelopeV2Schema, radarResetSourceErrorHttpStatusV2, radarResetSourceErrorIsRetryableV2, radarResetSourceErrorV2Schema, radarResetSourceMaxRpcCallsV2, radarResetSourceTranslationsSchema, radarResetStatisticsResponseV3Schema, radarResetStatisticsV1Schema, radarResetUInt64DecimalV2Schema, radarResetUInt64DecimalV2ToBigInt, radarResetUnexecutedActionV1Schema, radarResetUtcTimestampV2Schema, radarResetWithdrawnActionItemV2Schema, radarResetWithdrawnActionV1Schema, radarTiboSourceStatusMaxBytes, radarTiboSourceStatusPath, radarTiboSourceStatusSchema, radarTitledActivityFileSchema, radarTitledActivityProgressSchema, radarWebsiteLocalePrefixes, radarWebsiteLocales, radarWebsiteOrigin, radarWebsitePagePaths, radarWebsitePageUrl, readRadarActivityFile, readRadarActivityFileV2, readRadarActivityFileV3, readRadarCodexModels, readRadarCodexReleaseDirectory, readRadarCodexReleaseMonth, readRadarCodexReleaseNotes, readRadarCommunityTrendingLatest, readRadarCommunityTrendingMonth, readRadarResetClueSnapshot, readRadarTiboSourceStatus, readRadarTitledActivityFile, redactRadarBrowserRegistrationReferences, toSafeCauseSnapshotV2, upgradeRadarBrowserSubscriptionCommandV1 };
8917
+ export { CreateRadarResetSourceErrorEnvelopeInputV2, RadarActivityFile, RadarActivityFileV2, RadarActivityFileV3, RadarActivityProgress, RadarActivityProgressV2, RadarActivityProgressV3, RadarActivityReactionId, RadarBrowserNotificationProjection, RadarBrowserSubscriptionFailure, RadarBrowserSubscriptionRead, RadarBrowserSubscriptionSave, RadarBrowserSubscriptionSaveV2, RadarBrowserSubscriptionView, RadarBrowserSubscriptionViewV2, RadarBrowserTopics, RadarBrowserTopicsV2, RadarCodexGuessChoice, RadarCodexGuessError, RadarCodexGuessSaveReq, RadarCodexGuessView, RadarCodexModel, RadarCodexModels, RadarCodexProgressChange, RadarCodexProgressChangeV2, RadarCodexProgressChangeV3, RadarCodexProgressChangesV1, RadarCodexProgressChangesV2, RadarCodexProgressChangesV3, RadarCodexProgressEntryV3, RadarCodexProgressEntryV5, RadarCodexProgressImprovementV5, RadarCodexProgressPostRoleV5, RadarCodexProgressPostV5, RadarCodexProgressResetEntryV5, RadarCodexProgressTitleV3, RadarCodexProgressV1, RadarCodexProgressV2, RadarCodexProgressV3, RadarCodexProgressV4, RadarCodexProgressV5, RadarCodexReleaseDirectory, RadarCodexReleaseMonth, RadarCodexReleaseNotes, RadarCodexTimePoint, RadarCommunityTrendingEntry, RadarCommunityTrendingLatest, RadarCommunityTrendingMonth, RadarImprovementEntry, RadarImprovementHead, RadarImprovementPage, RadarNotificationProjection, RadarNotificationTarget, RadarNotificationTask, RadarNotificationTasks, RadarNotificationTopic, RadarResetActionDetailV1, RadarResetActionDetailV2, RadarResetActionDetailV3, RadarResetActionItemV2, RadarResetActionSummaryV2, RadarResetActiveActionItemV2, RadarResetAnalysisV1, RadarResetClue, RadarResetClueSnapshot, RadarResetDetailChunkReferenceV2, RadarResetDetailChunkRequestV2, RadarResetDetailManifestV2, RadarResetDetailMultipartEncodeInputV2, RadarResetDetailMultipartParseInputV2, RadarResetDetailMultipartPartV2, RadarResetExportV1, RadarResetExportV2, RadarResetExportV3, RadarResetManagement, RadarResetPendingActionV1, RadarResetPendingActionV2, RadarResetPositiveDecimalV2, RadarResetPrimarySourceV1, RadarResetPublicActionV1, RadarResetPublicIdV2, RadarResetPublicRecordsV1, RadarResetPublicationHomeFactsV2, RadarResetPublicationRevisionAvailableV2, RadarResetPublicationTiming, RadarResetReadActionsRequestV2, RadarResetReadActionsSuccessV2, RadarResetReadChangesRequestV2, RadarResetReadChangesSuccessV2, RadarResetReadDetailBatchRequestV2, RadarResetReadHeadRequestV2, RadarResetReadHeadSuccessV2, RadarResetSafeCauseSnapshotV2, RadarResetSafeCauseValueV2, RadarResetSha256V2, RadarResetSnapshotAvailableV1, RadarResetSourceContractErrorInputV2, RadarResetSourceContractErrorV2, RadarResetSourceErrorCodeV2, RadarResetSourceErrorEnvelopeV2, RadarResetSourceErrorV2, RadarResetSourceTranslations, RadarResetStatisticsResponseV3, RadarResetStatisticsV1, RadarResetUInt64DecimalV2, RadarResetUtcTimestampV2, RadarTiboSourceStatus, RadarTitledActivityFile, RadarTitledActivityProgress, RadarWebsiteLocale, activeRadarResetClue, compareRadarCommunityTrendingEntries, compareRadarNotificationTasks, compareRadarResetActionDetailsV1, compareRadarResetUtcTimestampsV1, createRadarBrowserNotificationProjection, createRadarCodexProgressCalendar, createRadarNotificationProjection, createRadarResetSourceErrorEnvelopeV2, encodeRadarActivityFile, encodeRadarActivityFileV2, encodeRadarActivityFileV3, encodeRadarResetDetailMultipartV2, encodeRadarTitledActivityFile, formatRadarResetPositiveDecimalV2, formatRadarResetUInt64DecimalV2, initialRadarBrowserSubscription, initialRadarBrowserSubscriptionV2, parseRadarCodexModels, parseRadarCodexProgressChangeV3, parseRadarCodexProgressChangesV3, parseRadarCodexProgressV1, parseRadarCodexProgressV2, parseRadarCodexProgressV3, parseRadarCodexProgressV4, parseRadarCodexProgressV5, parseRadarCodexReleaseDirectory, parseRadarCodexReleaseMonth, parseRadarCodexReleaseNotes, parseRadarCommunityTrendingLatest, parseRadarCommunityTrendingMonth, parseRadarResetActionDetailV1, parseRadarResetActionDetailV2, parseRadarResetActionDetailV3, parseRadarResetActionSummaryV2, parseRadarResetAnalysisV1, parseRadarResetClueSnapshot, parseRadarResetDetailMultipartV2, parseRadarResetExportV1, parseRadarResetExportV2, parseRadarResetExportV3, parseRadarResetPendingActionV1, parseRadarResetPendingActionV2, parseRadarResetPositiveDecimalV2, parseRadarResetPublicationHomeFactsV2, parseRadarResetPublicationRevisionAvailableV2, parseRadarResetReadActionsRequestV2, parseRadarResetReadActionsSuccessV2, parseRadarResetReadChangesRequestV2, parseRadarResetReadChangesSuccessV2, parseRadarResetReadDetailBatchRequestV2, parseRadarResetReadHeadRequestV2, parseRadarResetReadHeadSuccessV2, parseRadarResetSnapshotAvailableV1, parseRadarResetSourceErrorEnvelopeV2, parseRadarResetUInt64DecimalV2, projectRadarBrowserSubscriptionSelection, projectRadarBrowserSubscriptionV1, projectRadarResetExportV1FromV2, projectRadarResetExportV3FromV2, projectRadarResetPrimarySourceV1, projectRadarResetPublicActionToV2, radarActivityEventIdSchema, radarActivityFileSchema, radarActivityFileUrl, radarActivityFileV2Schema, radarActivityFileV2Url, radarActivityFileV3Schema, radarActivityFileV3Url, radarActivityMaxBytes, radarActivityProgressSchema, radarActivityProgressV2Schema, radarActivityProgressV3Schema, radarActivityReactionCountsSchema, radarActivityReactionIdSchema, radarActivityReactionIds, radarBrowserNotificationPageUrl, radarBrowserNotificationProjectionSchema, radarBrowserNotificationTargetUrlSchema, radarBrowserNotificationTopicSchema, radarBrowserRegistrationSchema, radarBrowserSubscriptionErrorRes, radarBrowserSubscriptionFailureSchema, radarBrowserSubscriptionOperationSchema, radarBrowserSubscriptionReadReq, radarBrowserSubscriptionRes, radarBrowserSubscriptionSaveReq, radarBrowserSubscriptionSaveV2Req, radarBrowserSubscriptionV2Res, radarBrowserSubscriptionViewSchema, radarBrowserSubscriptionViewV2Schema, radarBrowserSubscriptionsPath, radarBrowserTopicsSchema, radarBrowserTopicsV2Schema, radarCodexGuessChoiceSchema, radarCodexGuessErrorSchema, radarCodexGuessSaveReqSchema, radarCodexGuessViewSchema, radarCodexModelIdSchema, radarCodexModelUrl, radarCodexModelsMaxBytes, radarCodexModelsPath, radarCodexModelsSchema, radarCodexProgressCalendar, radarCodexProgressChangeSchema, radarCodexProgressChangeV2Schema, radarCodexProgressChangeV3Schema, radarCodexProgressChangesV1Schema, radarCodexProgressChangesV2Schema, radarCodexProgressChangesV3Schema, radarCodexProgressEntrySchema, radarCodexProgressEntryV3Schema, radarCodexProgressEntryV5Schema, radarCodexProgressImprovementV5Schema, radarCodexProgressPostRoleV5Schema, radarCodexProgressPostV5Schema, radarCodexProgressPostsV5Schema, radarCodexProgressResetEntryV5Schema, radarCodexProgressScore, radarCodexProgressTitleV3Schema, radarCodexProgressV1Schema, radarCodexProgressV2MaxBytes, radarCodexProgressV2Schema, radarCodexProgressV3MaxBytes, radarCodexProgressV3Schema, radarCodexProgressV4MaxBytes, radarCodexProgressV4Schema, radarCodexProgressV5MaxBytes, radarCodexProgressV5Schema, radarCodexReleaseDirectoryMaxBytes, radarCodexReleaseDirectoryPath, radarCodexReleaseDirectorySchema, radarCodexReleaseIdentitySchema, radarCodexReleaseMonthMaxBytes, radarCodexReleaseMonthPath, radarCodexReleaseMonthSchema, radarCodexReleaseNotesMaxBytes, radarCodexReleaseNotesPath, radarCodexReleaseNotesSchema, radarCodexReleaseSectionsSchema, radarCodexReleaseUrl, radarCodexTimePointSchema, radarCommunityTrendingEntrySchema, radarCommunityTrendingKindSchema, radarCommunityTrendingLatestMaxBytes, radarCommunityTrendingLatestPath, radarCommunityTrendingLatestSchema, radarCommunityTrendingMonthMaxBytes, radarCommunityTrendingMonthPath, radarCommunityTrendingMonthSchema, radarCommunityTrendingPlatformSchema, radarCommunityTrendingSourceSchema, radarCommunityTrendingSourceStaleMs, radarCommunityTrendingSummary, radarCommunityTrendingTopicSchema, radarImprovementColumnPath, radarImprovementEligibilityReq, radarImprovementEligibilityRes, radarImprovementEntrySchema, radarImprovementErrorRes, radarImprovementHeadReq, radarImprovementHeadRes, radarImprovementPageMaxBytes, radarImprovementPageReq, radarImprovementPageRes, radarImprovementPageSize, radarNotificationProjectionSchema, radarNotificationTargetSchema, radarNotificationTaskPageSize, radarNotificationTaskSchema, radarNotificationTasksPath, radarNotificationTasksReq, radarNotificationTasksRes, radarNotificationTopicSchema, radarNotificationTopicsSchema, radarResetActionDetailV1Schema, radarResetActionDetailV2Schema, radarResetActionDetailV3Schema, radarResetActionItemV2Schema, radarResetActionPageMaxBytesV2, radarResetActionPageMaxItemsV2, radarResetActionSummaryV2Schema, radarResetActiveActionItemV2Schema, radarResetAnalysisV1Schema, radarResetAnalyzerContractVersionV1, radarResetAudienceValues, radarResetChangeCoverageV2Schema, radarResetChangePageMaxBytesV2, radarResetChangePageMaxItemsV2, radarResetClueLifetimeMs, radarResetClueMaxBytes, radarResetCluePath, radarResetClueSchema, radarResetClueSnapshotSchema, radarResetContractVersionV1, radarResetContractVersionV2, radarResetDetailBatchMaxBytesV2, radarResetDetailBatchMaxChunksV2, radarResetDetailChunkReferenceV2Schema, radarResetDetailChunkRequestV2Schema, radarResetDetailManifestV2Schema, radarResetEffectValues, radarResetExportV1Schema, radarResetExportV2Schema, radarResetExportV3Schema, radarResetKindNoticeV2Schema, radarResetManagementActionSchema, radarResetManagementOperationSchema, radarResetManagementResSchema, radarResetManualApplyReqSchema, radarResetManualCopySchema, radarResetManualDraftSchema, radarResetManualDraftSeedSchema, radarResetManualPreviewReqSchema, radarResetManualPreviewResSchema, radarResetManualResultResSchema, radarResetNoticeKindValues, radarResetPendingActionV1Schema, radarResetPendingActionV2Schema, radarResetPlanValues, radarResetPositiveDecimalV2Schema, radarResetProductValues, radarResetPublicActionV1Schema, radarResetPublicDataLimits, radarResetPublicIdV2Schema, radarResetPublicRecordsCorePath, radarResetPublicRecordsV1Schema, radarResetPublicationHomeFactsV2Schema, radarResetPublicationRevisionAvailableV2Schema, radarResetPublicationTimingSchema, radarResetReadActionsDataV2Schema, radarResetReadActionsRequestV2Schema, radarResetReadActionsSuccessV2Schema, radarResetReadChangesDataV2Schema, radarResetReadChangesRequestV2Schema, radarResetReadChangesSuccessV2Schema, radarResetReadDetailBatchRequestV2Schema, radarResetReadHeadDataV2Schema, radarResetReadHeadRequestV2Schema, radarResetReadHeadSuccessV2Schema, radarResetReasonBasisValues, radarResetReasonCategoryValues, radarResetSafeCauseSnapshotV2Schema, radarResetSeriesValues, radarResetSha256V2Schema, radarResetSnapshotAvailableV1Schema, radarResetSourceChangeV2Schema, radarResetSourceErrorCodeValuesV2, radarResetSourceErrorEnvelopeV2Schema, radarResetSourceErrorHttpStatusV2, radarResetSourceErrorIsRetryableV2, radarResetSourceErrorV2Schema, radarResetSourceMaxRpcCallsV2, radarResetSourceTranslationsSchema, radarResetStatisticsResponseV3Schema, radarResetStatisticsV1Schema, radarResetUInt64DecimalV2Schema, radarResetUInt64DecimalV2ToBigInt, radarResetUnexecutedActionV1Schema, radarResetUtcTimestampV2Schema, radarResetWithdrawnActionItemV2Schema, radarResetWithdrawnActionV1Schema, radarTiboSourceStatusMaxBytes, radarTiboSourceStatusPath, radarTiboSourceStatusSchema, radarTitledActivityFileSchema, radarTitledActivityProgressSchema, radarWebsiteLegacyChinesePrefix, radarWebsiteLocalePrefixes, radarWebsiteLocaleSlugs, radarWebsiteLocales, radarWebsiteOrigin, radarWebsitePagePaths, radarWebsitePageUrl, readRadarActivityFile, readRadarActivityFileV2, readRadarActivityFileV3, readRadarCodexModels, readRadarCodexReleaseDirectory, readRadarCodexReleaseMonth, readRadarCodexReleaseNotes, readRadarCommunityTrendingLatest, readRadarCommunityTrendingMonth, readRadarResetClueSnapshot, readRadarTiboSourceStatus, readRadarTitledActivityFile, redactRadarBrowserRegistrationReferences, toSafeCauseSnapshotV2, upgradeRadarBrowserSubscriptionCommandV1 };
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import{z as e}from"zod";function t(e,t,n){let r=(e,t)=>{try{return n(e,t)}catch{return}};e.noticeCount!==e.noticeTimeline.length&&t.addIssue({code:`custom`,message:`action_notice_count_mismatch`,path:[`noticeCount`]});for(let[n,i]of e.noticeTimeline.entries())if(n===0){let n=r(i.authoredAt,e.firstAnnouncedAt);n!==void 0&&n!==0&&t.addIssue({code:`custom`,message:`notice_timeline_first_announcement_mismatch`,path:[`noticeTimeline`,0,`authoredAt`]})}else{let a=r(e.noticeTimeline.at(n-1).authoredAt,i.authoredAt);a!==void 0&&a>0&&t.addIssue({code:`custom`,message:`notice_timeline_not_ascending`,path:[`noticeTimeline`,n,`authoredAt`]})}}const n=1,r=4,i=Object.freeze({exportUtf8Bytes:2*1024*1024,analysis:Object.freeze({actions:512,intervals:511}),actionDetail:Object.freeze({noticeTimeline:64,reasons:128}),text:Object.freeze({publicTextCodePoints:500,evidenceExcerptCodePoints:500,urlCodePoints:2048})}),a=[`all`,`hard_reset`,`banked_reset`],o=[`hard_reset`,`banked_reset`],s=[`codex`,`chatgpt_work`],c=[`all_users`,`paid_users`,`named_plans`,`affected_subset`],l=[`plus`,`pro`],u=[`incident_compensation`,`user_milestone`,`celebration`],d=[`explicit_in_reset_post`,`explicit_in_related_source`,`contextual_inference`,`unknown`],ee=[`weekday`,`weekday_group`,`hour`,`six_hour_block`,`month`,`day_of_month`,`week_of_month`,`weekday_hour`,`minute_of_hour`,`five_minute_bucket`,`half_hour_slot`,`time_of_day_minute`],te=[`month`,`weekday`,`hour`,`six_hour_block`],f=e.number().finite(),p=f.min(0),m=e.number().int().min(0),h=e.number().int().positive(),g=f.min(0).max(1),_=e.iso.datetime({offset:!0}).refine(e=>e.endsWith(`Z`),{message:`utc_timestamp_required`}).refine(e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/.test(e),{message:`utc_timestamp_seconds_required`}),v=e.string().min(1).max(128).refine(e=>e===e.trim()&&!/[\p{Cc}\p{Cf}]/u.test(e),{message:`public_id_invalid`}),y=e.enum(a),ne=e.enum(u),re=e.enum(d),ie=e.object({contractVersion:e.literal(1),eventId:v,eventType:e.literal(`reset_analysis_snapshot_available`),analysisSnapshotId:v,sourceWatermark:v,occurredAt:_}).strict();function ae(e){return ie.parse(e)}function oe(e){return[...e].length}function se(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength}const ce=e.string().refine(e=>oe(e)<=i.text.evidenceExcerptCodePoints,{message:`evidence_excerpt_too_long`}),le=e.string().refine(e=>e.trim().length>0,{message:`source_text_empty`}),ue=e.string().refine(e=>oe(e)<=i.text.publicTextCodePoints,{message:`public_text_too_long`}),de=e.string().refine(e=>e.trim().length>0,{message:`source_account_display_name_blank`}).refine(e=>oe(e)<=i.text.publicTextCodePoints,{message:`source_account_display_name_too_long`}),fe=e.string().refine(e=>oe(e)<=i.text.urlCodePoints,{message:`source_url_too_long`}).refine(e=>{if([...e].some(e=>{let t=e.codePointAt(0);return t===void 0||t<=31||t===127}))return!1;try{let t=new URL(e);return t.protocol===`https:`&&t.username.length===0&&t.password.length===0}catch{return!1}},{message:`https_url_required`});function b(e){return new Set(e).size===e.length}const pe=e.discriminatedUnion(`state`,[e.object({state:e.literal(`known`),values:e.array(e.enum(o)).min(1).refine(b,{message:`reset_effects_must_be_unique`})}).strict(),e.object({state:e.literal(`unknown`),values:e.tuple([])}).strict()]),me=e.object({products:e.array(e.enum(s)).refine(b,{message:`products_must_be_unique`}),audienceClaims:e.array(e.object({audience:e.enum(c),plans:e.array(e.enum(l)).refine(b,{message:`plans_must_be_unique`}),subsetSummary:ue.nullable()}).strict())}).strict(),he=e.object({resetActionId:v,firstAnnouncedAt:_,effectiveAt:_.nullable(),resetEffects:pe,actionScope:me,reasonCategories:e.array(ne).refine(b,{message:`reason_categories_must_be_unique`}),noticeCount:h,previousAllActionDays:p.nullable(),previousHardResetActionDays:p.nullable(),previousBankedResetActionDays:p.nullable()}).strict(),ge=e.object({series:y,previousActionId:v,actionId:v,fromFirstAnnouncedAt:_,toFirstAnnouncedAt:_,days:p}).strict(),_e=e.object({count:h,min:p,max:p,mean:p,median:p,percentile25:p,percentile75:p,percentile90:p,standardDeviation:p,coefficientOfVariation:p.nullable(),interquartileRange:p}).strict(),ve=e.object({lower:p,upper:p}).strict(),ye=e.object({iterations:h,seed:e.number().int(),mean95:ve,median95:ve}).strict(),be=e.object({bucket:e.string().min(1),lowerInclusive:p,upperExclusive:p.nullable(),count:m,share:g}).strict(),xe=e.object({endingIndex:m,windowSize:h,mean:p,median:p}).strict(),Se=e.object({firstHalf:_e.nullable(),secondHalf:_e.nullable(),meanChangeDays:f.nullable(),meanChangePercent:f.nullable()}).strict(),Ce=e.object({series:y,actionCount:m,completedIntervalCount:m,intervalSummary:_e.nullable(),bootstrap95:ye.nullable(),intervalHistogram:e.array(be),shortestIntervals:e.array(ge),longestIntervals:e.array(ge),rolling3:e.array(xe),rolling5:e.array(xe),linearSlopeDaysPerInterval:f.nullable(),halfComparison:Se,survivalCurve:e.array(e.object({elapsedDays:p,survivalProbability:g}).strict())}).strict(),we=e.object({series:y,elapsedDays:p,horizonDays:p,sampleAtRisk:m,eventsWithinWindow:m,probability:g.nullable()}).strict(),Te=e.object({key:e.string(),count:m,share:g,timeZone:e.string().min(1),series:y,dimension:e.enum(ee)}).strict(),Ee=e.object({timeZone:e.string().min(1),series:y,dimension:e.enum(ee),categoryCount:h,nonZeroCategoryCount:m,maxShare:g,herfindahlIndex:g,normalizedEntropy:g}).strict(),De=e.object({startMinute:e.number().int().min(0).max(1439),endMinute:e.number().int().min(0).max(1439),wrapsMidnight:e.boolean(),eventCount:m,share:g}).strict(),Oe=e.object({timeZone:e.string().min(1),series:y,eventCount:h,slotMinutes:h,fixedWindows:e.array(e.object({durationMinutes:h,bestWindows:e.array(De)}).strict()),coverageWindows:e.array(e.object({targetShare:g,requiredEventCount:h,durationMinutes:h,bestWindows:e.array(De)}).strict())}).strict(),ke=e.object({series:y,thresholdDays:p,clusterCount:m,multiEventClusterCount:m,largestClusterSize:m,eventsInMultiEventClusters:m,eventShareInMultiEventClusters:g}).strict(),Ae=e.object({category:ne,actionCount:m,actionShare:g,hardResetActionCount:m,bankedResetActionCount:m,explicitInResetPostCount:m,explicitInRelatedSourceCount:m,contextualInferenceCount:m,unknownCount:m}).strict(),je=e.object({category:ne,series:y,timeZone:e.string().min(1),dimension:e.enum(te),key:e.string(),eventCount:m,reasonEventCount:m,binEventCount:m,seriesEventCount:m,shareWithinReason:g.nullable(),shareWithinBin:g.nullable(),shareOfSeries:g.nullable()}).strict(),Me=e.object({overview:e.object({actionCount:h,hardResetActionCount:m,bankedResetActionCount:m,firstAnnouncedAt:_,lastAnnouncedAt:_,coverageDays:p,sourceNoticeCount:h}).strict(),actions:e.array(he).min(1).max(i.analysis.actions),intervals:e.array(ge).max(i.analysis.intervals),series:e.object({all:Ce,hard_reset:Ce,banked_reset:Ce}).strict(),historicalConditionalFrequencies:e.array(we),calendars:e.array(Te),calendarConcentrations:e.array(Ee),intradayRanges:e.array(Oe),clusters:e.array(ke),reasons:e.object({summary:e.array(Ae),crossTabs:e.array(je)}).strict(),caveats:e.array(ue.min(1))}).strict(),Ne=e.object({contractVersion:e.literal(1),analyzerContractVersion:e.literal(4),generatedAt:_,analysisWindow:e.object({startAt:_,startInclusive:e.boolean(),timeBasis:e.literal(`first_announcement`),throughFirstAnnouncedAt:_}).strict(),result:Me}).strict().superRefine((e,t)=>{let n=e.result.actions,r=e.result.overview;n.length!==r.actionCount&&t.addIssue({code:`custom`,message:`analysis_action_count_mismatch`,path:[`result`,`actions`]});let i=new Set;for(let e=0;e<n.length;e+=1){let r=n[e];i.has(r.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_action_identity_duplicate`,path:[`result`,`actions`,e,`resetActionId`]}),i.add(r.resetActionId);let a=n[e-1];a!==void 0&&(a.firstAnnouncedAt>r.firstAnnouncedAt||a.firstAnnouncedAt===r.firstAnnouncedAt&&a.resetActionId>r.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_actions_not_stably_sorted`,path:[`result`,`actions`,e]})}let o=(e,r,i)=>{i!==void 0&&e.series!==i&&t.addIssue({code:`custom`,message:`analysis_interval_series_mismatch`,path:[...r,`series`]});let a=i??e.series,o=a===`all`?n:n.filter(e=>e.resetEffects.state===`known`&&e.resetEffects.values.includes(a)),s=o.findIndex(t=>t.resetActionId===e.actionId),c=o[s];if(c===void 0){t.addIssue({code:`custom`,message:`analysis_interval_action_mismatch`,path:[...r,`actionId`]});return}let l=o[s-1];(l===void 0||e.previousActionId!==l.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_interval_previous_action_mismatch`,path:[...r,`previousActionId`]}),l!==void 0&&e.fromFirstAnnouncedAt!==l.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_interval_from_first_announcement_mismatch`,path:[...r,`fromFirstAnnouncedAt`]}),e.toFirstAnnouncedAt!==c.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_interval_to_first_announcement_mismatch`,path:[...r,`toFirstAnnouncedAt`]})};e.result.intervals.forEach((e,t)=>o(e,[`result`,`intervals`,t]));for(let t of a){let n=e.result.series[t];for(let e of[`shortestIntervals`,`longestIntervals`])n[e].forEach((n,r)=>o(n,[`result`,`series`,t,e,r],t))}n[0]?.firstAnnouncedAt!==r.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_first_action_mismatch`,path:[`result`,`overview`,`firstAnnouncedAt`]}),(n.at(-1)?.firstAnnouncedAt!==r.lastAnnouncedAt||e.analysisWindow.throughFirstAnnouncedAt!==r.lastAnnouncedAt)&&t.addIssue({code:`custom`,message:`analysis_last_action_mismatch`,path:[`result`,`overview`,`lastAnnouncedAt`]});for(let[n,r]of Object.entries({all:`all`,hard_reset:`hard_reset`,banked_reset:`banked_reset`}))e.result.series[n].series!==r&&t.addIssue({code:`custom`,message:`analysis_series_identity_mismatch`,path:[`result`,`series`,n,`series`]})}),Pe=e.object({excerpt:ce,sourceUrl:fe}).strict();function Fe(e,t){try{return He(e,t)}catch{return}}function Ie(e,t){try{return w(e,t)}catch{return}}const x=e.object({contractVersion:e.literal(1),resetActionId:v,firstAnnouncedAt:_,effectiveAt:_.nullable(),resetEffects:pe,actionScope:me,noticeCount:h,reasons:e.array(e.object({category:ne,summary:ue.min(1),basis:re,evidence:e.array(Pe).min(1)}).strict()).max(i.actionDetail.reasons),noticeTimeline:e.array(e.object({phase:e.enum([`preview`,`executed`]),authoredAt:_,contentCompleteness:e.enum([`verified_full_text`,`verified_excerpt`]),sourceText:le,sourceTextZh:le.nullable(),sourceUrl:fe,sourceAccount:e.object({displayName:de}).strict()}).strict()).min(1).max(i.actionDetail.noticeTimeline)}).strict().superRefine((e,n)=>t(e,n,w)),Le=[`preview`,`executed`,`schedule_change`,`scope_change`,`cancel_preview`,`delivery_issue`,`make_up`,`repair`,`update`],Re=e.object({resolution:e.enum([`resolved`,`unbounded`,`unresolved`]),evidence:e.string().trim().min(1).max(300).nullable(),precision:e.enum([`exact`,`approximate`,`range`]).nullable(),relation:e.enum([`instant`,`interval`,`deadline`,`not_before`,`unbounded`]).nullable(),effectiveWindow:e.object({earliestAt:e.iso.datetime(),latestAt:e.iso.datetime()}).strict().refine(e=>Date.parse(e.earliestAt)<=Date.parse(e.latestAt),{message:`publication_timing_window_inverted`}).nullable()}).strict().superRefine((e,t)=>{let n=e=>t.addIssue({code:`custom`,message:e});e.resolution===`resolved`!=(e.effectiveWindow!==null)&&n(`publication_timing_resolution_window_mismatch`),e.resolution===`unbounded`&&e.relation!==`unbounded`&&n(`publication_timing_unbounded_relation_required`);let r=e.effectiveWindow;e.resolution===`resolved`&&((e.relation===null||e.relation===`unbounded`)&&n(`publication_timing_bounded_relation_required`),r!==null&&e.relation===`interval`==(r.earliestAt===r.latestAt)&&n(`publication_timing_relation_window_mismatch`))}),S=e.object({resetActionId:v,state:e.enum([`preview`,`executed`]),resetEffects:pe,executedEffects:e.array(e.enum(o)).refine(b),pendingEffects:e.array(e.enum(o)).refine(b),plannedTiming:Re.nullable(),noticeTimeline:e.array(x.shape.noticeTimeline.element.omit({phase:!0}).extend({kinds:e.array(e.enum(Le)).min(1).refine(b)}).strict()).min(1).max(i.actionDetail.noticeTimeline)}).strict().superRefine((e,t)=>{e.state===`preview`&&e.executedEffects.length>0&&t.addIssue({code:`custom`,message:`pending_preview_has_executed_effects`}),e.state===`executed`&&e.pendingEffects.length===0&&t.addIssue({code:`custom`,message:`pending_executed_action_has_no_pending_effects`});for(let n of[...e.executedEffects,...e.pendingEffects])new Set(e.resetEffects.values).has(n)||t.addIssue({code:`custom`,message:`pending_effect_not_declared`});e.executedEffects.some(t=>e.pendingEffects.includes(t))&&t.addIssue({code:`custom`,message:`pending_effect_already_executed`});for(let n=1;n<e.noticeTimeline.length;n+=1){let r=e.noticeTimeline[n-1],i=e.noticeTimeline[n],a=Ie(r.authoredAt,i.authoredAt);a!==void 0&&a>0&&t.addIssue({code:`custom`,message:`pending_notice_timeline_not_ascending`,path:[`noticeTimeline`,n]})}}),ze=e.object({contractVersion:e.literal(1),generatedAt:_,analysis:Ne,actions:e.array(x).min(1).max(i.analysis.actions),pendingResetActions:e.array(S).max(i.analysis.actions)}).strict();function Be(e,t){se(e)>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]});let n=Ie(e.generatedAt,e.analysis.generatedAt);n!==void 0&&n<0&&t.addIssue({code:`custom`,message:`export_generated_at_before_analysis`,path:[`generatedAt`]})}function Ve(e,t,n,r){(e.resetActionId!==t.resetActionId||e.firstAnnouncedAt!==t.firstAnnouncedAt||e.effectiveAt!==t.effectiveAt||e.noticeCount!==t.noticeCount||JSON.stringify(e.resetEffects)!==JSON.stringify(t.resetEffects)||JSON.stringify(e.actionScope)!==JSON.stringify(t.actionScope))&&r.addIssue({code:`custom`,message:`export_action_summary_mismatch`,path:[`actions`,n]});let i=[...new Set(e.reasons.map(e=>e.category))].sort();JSON.stringify(i)!==JSON.stringify([...t.reasonCategories].sort())&&r.addIssue({code:`custom`,message:`export_action_reason_categories_mismatch`,path:[`actions`,n,`reasons`]})}const C=ze.superRefine((e,t)=>{Be(e,t),b(e.pendingResetActions.map(e=>e.resetActionId))||t.addIssue({code:`custom`,message:`export_pending_action_identity_duplicate`,path:[`pendingResetActions`]});let n=new Map,r=new Set(e.analysis.result.actions.map(e=>e.resetActionId));for(let i=0;i<e.actions.length;i+=1){let a=e.actions[i];n.has(a.resetActionId)?t.addIssue({code:`custom`,message:`export_action_identity_duplicate`,path:[`actions`,i,`resetActionId`]}):n.set(a.resetActionId,i);let o=e.actions[i-1],s=o===void 0?void 0:Fe(o,a);s!==void 0&&s>0&&t.addIssue({code:`custom`,message:`export_actions_not_stably_sorted`,path:[`actions`,i]});let c=Ie(a.firstAnnouncedAt,e.analysis.analysisWindow.throughFirstAnnouncedAt);c!==void 0&&c>0&&t.addIssue({code:`custom`,message:`export_action_after_analysis_snapshot`,path:[`actions`,i,`firstAnnouncedAt`]});let l=Ie(a.firstAnnouncedAt,e.analysis.analysisWindow.startAt);l!==void 0&&(e.analysis.analysisWindow.startInclusive?l>=0:l>0)&&!r.has(a.resetActionId)&&t.addIssue({code:`custom`,message:`export_window_action_not_in_analysis`,path:[`actions`,i,`resetActionId`]})}for(let r of e.analysis.result.actions){let i=n.get(r.resetActionId);if(i===void 0){t.addIssue({code:`custom`,message:`export_analysis_action_missing`,path:[`actions`]});continue}Ve(e.actions[i],r,i,t)}});function w(e,t){let n=/^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2})(?:\.(\d+))?Z$/,r=n.exec(e),i=n.exec(t);if(r===null||i===null)throw Error(`radar_reset_v1_timestamp_invalid`);let a=r[1],o=i[1];if(a<o)return-1;if(a>o)return 1;let s=r[2]??``,c=i[2]??``,l=Math.max(s.length,c.length);for(let e=0;e<l;e+=1){let t=s.charCodeAt(e)||48,n=c.charCodeAt(e)||48;if(t<n)return-1;if(t>n)return 1}return 0}function He(e,t){let n=w(e.firstAnnouncedAt,t.firstAnnouncedAt);return n===0?e.resetActionId<t.resetActionId?-1:+(e.resetActionId>t.resetActionId):n}function Ue(e){return Ne.parse(e)}function We(e){return x.parse(e)}function Ge(e){return C.parse(e)}function Ke(e){return S.parse(e)}function qe(e){let t;try{t=We(e)}catch(e){throw Error(`radar_reset_primary_source_action_invalid`,{cause:e})}let n=t.noticeTimeline[0];if(n===void 0)throw Error(`radar_reset_primary_source_notice_missing`);return Object.freeze({displayName:n.sourceAccount.displayName,sourceUrl:n.sourceUrl,excerpt:[...n.sourceText.trim()].slice(0,i.text.publicTextCodePoints).join(``)})}const Je=2,Ye=30,Xe=256,Ze=512*1024,Qe=256,$e=256*1024,et=32,tt=2*1024*1024,nt=9223372036854775807n,rt=e.string().regex(/^(?:0|[1-9][0-9]{0,18})$/,`uint64_decimal_noncanonical`).refine(e=>BigInt(e)<=nt,`uint64_decimal_out_of_range`),T=e.string().regex(/^[1-9][0-9]{0,18}$/,`positive_decimal_noncanonical`).refine(e=>BigInt(e)<=nt,`positive_decimal_out_of_range`);function it(e){return rt.parse(e)}function at(e){return T.parse(e)}function ot(e){return BigInt(it(e))}function st(e){if(e<0n||e>nt)throw RangeError(`uint64_decimal_out_of_range`);return e.toString()}function ct(e){if(e<1n||e>nt)throw RangeError(`positive_decimal_out_of_range`);return e.toString()}const E=e.iso.datetime({offset:!0}).refine(e=>e.endsWith(`Z`),`utc_timestamp_required`).refine(e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/.test(e),`utc_timestamp_seconds_required`),D=e.string().min(1).max(128).refine(e=>e===e.trim()&&!/[\p{Cc}\p{Cf}]/u.test(e),`public_id_invalid`),O=e.string().regex(/^sha256:[0-9a-f]{64}$/,`sha256_noncanonical`);function lt(e){return new Set(e).size===e.length}const ut=t=>e.array(t).refine(lt,`array_values_must_be_unique`),dt=t=>e.string().refine(e=>[...e].length<=t,`string_exceeds_${t}_code_points`),ft=e.number().finite().min(0),pt=e.number().int().min(0).max(2**53-1),mt=e.number().int().positive().max(2**53-1),ht=e.enum([`hard_reset`,`banked_reset`]),gt=e.enum([`codex`,`chatgpt_work`]),_t=e.enum([`all_users`,`paid_users`,`named_plans`,`affected_subset`]),vt=e.enum([`plus`,`pro`]),yt=e.enum([`incident_compensation`,`user_milestone`,`celebration`]),bt=e.object({resetActionId:D,firstAnnouncedAt:E,effectiveAt:E.nullable(),resetEffects:e.union([e.object({state:e.literal(`known`),values:ut(ht).nonempty()}).strict(),e.object({state:e.literal(`unknown`),values:e.tuple([])}).strict()]),actionScope:e.object({products:ut(gt),audienceClaims:e.array(e.object({audience:_t,plans:ut(vt),subsetSummary:dt(500).nullable()}).strict())}).strict(),reasonCategories:ut(yt),noticeCount:mt,previousAllActionDays:ft.nullable(),previousHardResetActionDays:ft.nullable(),previousBankedResetActionDays:ft.nullable()}).strict();function xt(e){return bt.parse(e)}const St=e.object({generatedAt:E,availableRange:e.object({firstAnnouncedAt:E,lastAnnouncedAt:E}).strict().nullable(),current:e.object({summary:bt,status:e.object({phase:e.enum([`preview`,`executed`]),statusAt:E}).strict()}).strict().nullable()}).strict().superRefine((e,t)=>{if(e.availableRange===null!=(e.current===null)){t.addIssue({code:`custom`,message:`home_empty_state_inconsistent`});return}e.availableRange!==null&&e.current!==null&&e.current.summary.firstAnnouncedAt!==e.availableRange.lastAnnouncedAt&&t.addIssue({code:`custom`,message:`home_current_range_inconsistent`})});function Ct(e){return St.parse(e)}const wt=e.object({ordinal:pt,sha256:O,byteSize:mt}).strict(),Tt=e.object({sha256:O,byteSize:mt,chunkCount:mt,chunks:e.array(wt).min(1)}).strict().superRefine((e,t)=>{e.chunkCount!==e.chunks.length&&t.addIssue({code:`custom`,message:`chunk_count_mismatch`});let n=0;for(let[r,i]of e.chunks.entries())i.ordinal!==r&&t.addIssue({code:`custom`,message:`chunk_ordinal_invalid`}),n+=i.byteSize;n!==e.byteSize&&t.addIssue({code:`custom`,message:`detail_byte_size_mismatch`})}),Et=e.object({lifecycleState:e.literal(`active`),actionOrdinal:T,summary:bt,detailManifest:Tt}).strict(),Dt=e.object({lifecycleState:e.literal(`withdrawn`),actionOrdinal:T,resetActionId:D,lastActiveFirstAnnouncedAt:E}).strict(),Ot=e.discriminatedUnion(`lifecycleState`,[Et,Dt]),kt=e.object({contractVersion:e.literal(2)}).strict(),At=e.object({contractVersion:e.literal(2),revision:D,cursor:T.nullable()}).strict(),jt=e.object({contractVersion:e.literal(2),revision:D,afterSequence:rt}).strict(),Mt=e.object({resetActionId:D,ordinal:pt,sha256:O,byteSize:mt}).strict(),Nt=e.object({contractVersion:e.literal(2),revision:D,chunks:e.array(Mt).min(1).max(32)}).strict().superRefine((e,t)=>{e.chunks.reduce((e,t)=>e+t.byteSize,0)>2097152&&t.addIssue({code:`custom`,message:`detail_batch_too_large`}),lt(e.chunks.map(e=>`${e.resetActionId}\u0000${e.ordinal}`))||t.addIssue({code:`custom`,message:`detail_chunk_duplicate`})}),Pt=e.object({lifecycleState:e.enum([`active`,`withdrawn`]),firstAnnouncedAt:E.nullable(),contentSha256:O.nullable()}).strict().superRefine((e,t)=>{e.lifecycleState===`active`&&(e.firstAnnouncedAt===null||e.contentSha256===null)&&t.addIssue({code:`custom`,message:`active_change_state_incomplete`})}),Ft=e.object({sourceChangeSequence:T,introducedByRevision:D,resetActionId:D,kind:e.enum([`create`,`upsert`,`withdraw`]),activationKind:e.enum([`initial`,`restored`]).nullable(),activationOrdinal:T.nullable(),before:Pt.nullable(),after:Pt.nullable()}).strict().superRefine((e,t)=>{e.activationKind===null!=(e.activationOrdinal===null)&&t.addIssue({code:`custom`,message:`activation_pair_invalid`}),e.kind===`create`&&(e.activationKind!==`initial`||e.before!==null||e.after?.lifecycleState!==`active`)&&t.addIssue({code:`custom`,message:`create_change_invalid`}),e.kind===`withdraw`&&(e.activationKind!==null||e.before?.lifecycleState!==`active`||e.after?.lifecycleState!==`withdrawn`)&&t.addIssue({code:`custom`,message:`withdraw_change_invalid`}),e.kind===`upsert`&&e.activationKind===`initial`&&t.addIssue({code:`custom`,message:`upsert_activation_invalid`})}),It=e.object({minSequence:e.literal(`1`),maxSequence:T}).strict(),Lt=e.object({revision:D,projectionFingerprint:O,actionCount:pt,activeActionCount:pt,changeCoverage:It.nullable(),home:St}).strict().superRefine((e,t)=>{e.activeActionCount>e.actionCount&&t.addIssue({code:`custom`,message:`active_action_count_invalid`}),e.activeActionCount===0!=(e.home.availableRange===null)&&t.addIssue({code:`custom`,message:`head_home_count_inconsistent`})}),Rt=e.object({revision:D,items:e.array(Ot).max(256),nextCursor:T.nullable()}).strict().superRefine((e,t)=>{for(let n=1;n<e.items.length;n+=1){let r=e.items.at(n-1),i=e.items.at(n);if(r!==void 0&&i!==void 0&&BigInt(r.actionOrdinal)>=BigInt(i.actionOrdinal)){t.addIssue({code:`custom`,message:`action_ordinal_order_invalid`});break}}let n=e.items.at(-1);e.nextCursor!==null&&n?.actionOrdinal!==e.nextCursor&&t.addIssue({code:`custom`,message:`action_cursor_invalid`})}),zt=e.object({revision:D,coverage:It.nullable(),items:e.array(Ft).max(256),nextAfterSequence:T.nullable()}).strict().superRefine((e,t)=>{for(let n=1;n<e.items.length;n+=1){let r=e.items.at(n-1),i=e.items.at(n);if(r!==void 0&&i!==void 0&&BigInt(r.sourceChangeSequence)+1n!==BigInt(i.sourceChangeSequence)){t.addIssue({code:`custom`,message:`change_sequence_gap`});break}}let n=e.items.at(-1);e.nextAfterSequence!==null&&n?.sourceChangeSequence!==e.nextAfterSequence&&t.addIssue({code:`custom`,message:`change_cursor_invalid`})}),Bt=t=>e.object({contractVersion:e.literal(2),ok:e.literal(!0),data:t}).strict(),Vt=Bt(Lt),Ht=Bt(Rt),Ut=Bt(zt),Wt=[`source_invalid_request`,`source_revision_unknown`,`source_cursor_invalid`,`source_chunk_mismatch`,`source_response_over_capacity`,`source_integrity_conflict`,`source_revision_identity_conflict`,`source_sequence_exhausted`,`source_temporarily_unavailable`,`source_rpc_transport_failure`,`source_stream_incomplete`];function Gt(e,t=0,n=new Set){if(t>4)return!1;if(e===null||typeof e==`boolean`)return!0;if(typeof e==`string`)return[...e].length<=1024;if(typeof e==`number`)return Number.isFinite(e);if(typeof e!=`object`||n.has(e))return!1;if(n.add(e),Array.isArray(e))return e.length>16?!1:e.every(e=>Gt(e,t+1,n));let r=Object.entries(e);return r.length>16?!1:r.every(([,e])=>Gt(e,t+1,n))}const Kt=e.record(e.string(),e.unknown()).refine(e=>Gt(e),`safe_cause_invalid`).refine(e=>new TextEncoder().encode(JSON.stringify(e)).byteLength<=8192,`safe_cause_too_large`),qt=e.object({code:e.enum(Wt),operation:D,stage:D,revision:D.optional(),retryable:e.boolean(),correlationId:D,cause:Kt}).strict(),Jt=e.object({contractVersion:e.literal(2),ok:e.literal(!1),error:qt}).strict(),Yt=e.object({contractVersion:e.literal(2),eventType:e.literal(`reset_publication_revision_available`),eventId:e.string().regex(/^reset_pub_v2_[0-9a-f]{64}$/),revision:D,changeHighWater:rt,projectionFingerprint:O,occurredAt:E}).strict();function Xt(e){return kt.parse(e)}function Zt(e){return At.parse(e)}function Qt(e){return jt.parse(e)}function $t(e){return Nt.parse(e)}function en(e){return Vt.parse(e)}function tn(e){return Ht.parse(e)}function nn(e){return Ut.parse(e)}function rn(e){return Jt.parse(e)}function an(e){return Yt.parse(e)}var on=class extends Error{code;operation;stage;retryable;constructor(e){super(`${e.code}:${e.stage}`,{cause:e.cause}),this.name=`RadarResetSourceContractErrorV2`,this.code=e.code,this.operation=e.operation,this.stage=e.stage,this.retryable=e.retryable}};const k=new TextEncoder,sn=new TextDecoder(`utf-8`,{fatal:!0});function A(e,t,n){if(n+t.byteLength>e.byteLength)return!1;for(let r=0;r<t.byteLength;r+=1)if(e.at(n+r)!==t.at(r))return!1;return!0}function cn(e,t){if(t.byteLength===0)return!0;for(let n=0;n<=e.byteLength-t.byteLength;n+=1)if(A(e,t,n))return!0;return!1}function ln(e){let t=e.reduce((e,t)=>e+t.byteLength,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.byteLength;return n}function un(e){let t=``;for(let n=0;n<e.byteLength;n+=32768)t+=String.fromCharCode(...e.slice(n,n+32768));return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/u,``)}function dn(e){if(!/^[A-Za-z0-9_-]+$/u.test(e))throw Error(`base64url_noncanonical`);let t=(4-e.length%4)%4,n=`${e.replaceAll(`-`,`+`).replaceAll(`_`,`/`)}${`=`.repeat(t)}`,r=atob(n),i=Uint8Array.from(r,e=>e.charCodeAt(0));if(un(i)!==e)throw Error(`base64url_noncanonical`);return i}async function fn(e){let t=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return`sha256:${[...new Uint8Array(await crypto.subtle.digest(`SHA-256`,t))].map(e=>e.toString(16).padStart(2,`0`)).join(``)}`}function pn(e){for(let t=0;t<64;t+=1){let t=`radar-reset-v2-${[...crypto.getRandomValues(new Uint8Array(24))].map(e=>e.toString(16).padStart(2,`0`)).join(``)}`,n=k.encode(`--${t}`);if(!e.some(e=>cn(e,n)))return t}throw Error(`multipart_boundary_generation_failed`)}async function mn(e){let t=D.parse(e.revision),n=D.parse(e.correlationId),r=Nt.parse({contractVersion:2,revision:t,chunks:e.parts.map(({bytes:e,...t})=>t)}),i=e.parts.map((e,t)=>({...r.chunks[t],bytes:new Uint8Array(e.bytes)}));for(let e of i)if(e.bytes.byteLength!==e.byteSize||await fn(e.bytes)!==e.sha256)throw new on({code:`source_chunk_mismatch`,operation:`readDetailBatch`,stage:`detail_encode`,retryable:!1});let a=pn(i.map(e=>e.bytes)),o=[];for(let e of i)o.push(k.encode(`--${a}\r\nContent-Type: application/octet-stream\r
2
- X-Radar-Reset-Action-Id-B64: ${un(k.encode(e.resetActionId))}\r\nX-Radar-Detail-Ordinal: ${e.ordinal}\r\nX-Radar-Byte-Size: ${e.byteSize}\r\nX-Radar-SHA-256: ${e.sha256}\r\n\r\n`)),o.push(e.bytes,k.encode(`\r
3
- `));o.push(k.encode(`--${a}--\r\n`));let s=ln(o),c=s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength);return new Response(c,{status:200,headers:{"Cache-Control":`no-store`,"Content-Type":`multipart/mixed; boundary=${a}`,"X-Radar-Correlation-Id":n,"X-Radar-Part-Count":String(i.length),"X-Radar-Revision-B64":un(k.encode(t))}})}function j(e,t,n){throw new on({code:e,operation:`readDetailBatch`,stage:`detail_stream`,retryable:t,cause:n})}async function hn(e){if(e.body===null)return j(`source_stream_incomplete`,!0);let t=e.body.getReader(),n=[],r=0;try{for(;;){let e=await t.read();if(e.done)break;if(r+=e.value.byteLength,r>2162688){try{await t.cancel()}catch{}return j(`source_response_over_capacity`,!1)}n.push(e.value)}}catch(e){return j(`source_stream_incomplete`,!0,e)}finally{t.releaseLock()}return ln(n)}function M(e,t){let n=e.headers.get(t);return n===null||n.includes(`,`)?j(`source_chunk_mismatch`,!1):n}function gn(e){if([...e].some(e=>e>127))return j(`source_chunk_mismatch`,!1);let t=String.fromCharCode(...e),n=new Map,r=new Set([`content-type`,`x-radar-reset-action-id-b64`,`x-radar-detail-ordinal`,`x-radar-byte-size`,`x-radar-sha-256`]);for(let e of t.split(`\r
4
- `)){let t=e.indexOf(`:`);if(t<=0||e.slice(t+1,t+2)!==` `)return j(`source_chunk_mismatch`,!1);let i=e.slice(0,t).toLowerCase(),a=e.slice(t+2);if(!r.has(i)||n.has(i)||a.length===0)return j(`source_chunk_mismatch`,!1);n.set(i,a)}return n.size===r.size?n:j(`source_chunk_mismatch`,!1)}function _n(e,t,n){for(let r=n;r<=e.byteLength-t.byteLength;r+=1)if(A(e,t,r))return r;return-1}async function vn(e,t){let n=Nt.parse({contractVersion:2,revision:t.revision,chunks:t.chunks});if(e.status!==200)return j(`source_chunk_mismatch`,!1);let r=M(e,`Content-Type`),i=/^multipart\/mixed; boundary=(radar-reset-v2-[0-9a-f]{48})$/u.exec(r);if(i===null)return j(`source_chunk_mismatch`,!1);let a=i[1];if(M(e,`Cache-Control`)!==`no-store`)return j(`source_chunk_mismatch`,!1);D.parse(M(e,`X-Radar-Correlation-Id`));let o=M(e,`X-Radar-Part-Count`);if(!/^[1-9][0-9]*$/u.test(o)||Number(o)>32||Number(o)!==n.chunks.length)return j(`source_chunk_mismatch`,!1);let s;try{s=sn.decode(dn(M(e,`X-Radar-Revision-B64`)))}catch(e){return j(`source_chunk_mismatch`,!1,e)}if(s!==n.revision)return j(`source_chunk_mismatch`,!1);let c=await hn(e),l=k.encode(`--${a}\r\n`),u=k.encode(`--${a}--\r\n`),d=k.encode(`\r
1
+ import{z as e}from"zod";function t(e,t,n){let r=(e,t)=>{try{return n(e,t)}catch{return}};e.noticeCount!==e.noticeTimeline.length&&t.addIssue({code:`custom`,message:`action_notice_count_mismatch`,path:[`noticeCount`]});for(let[n,i]of e.noticeTimeline.entries())if(n===0){let n=r(i.authoredAt,e.firstAnnouncedAt);n!==void 0&&n!==0&&t.addIssue({code:`custom`,message:`notice_timeline_first_announcement_mismatch`,path:[`noticeTimeline`,0,`authoredAt`]})}else{let a=r(e.noticeTimeline.at(n-1).authoredAt,i.authoredAt);a!==void 0&&a>0&&t.addIssue({code:`custom`,message:`notice_timeline_not_ascending`,path:[`noticeTimeline`,n,`authoredAt`]})}}const n=1,r=4,i=Object.freeze({exportUtf8Bytes:2*1024*1024,analysis:Object.freeze({actions:512,intervals:511}),actionDetail:Object.freeze({noticeTimeline:64,reasons:128}),text:Object.freeze({publicTextCodePoints:500,evidenceExcerptCodePoints:500,urlCodePoints:2048})}),a=[`all`,`hard_reset`,`banked_reset`],o=[`hard_reset`,`banked_reset`],s=[`codex`,`chatgpt_work`],c=[`all_users`,`paid_users`,`named_plans`,`affected_subset`],l=[`plus`,`pro`],u=[`incident_compensation`,`user_milestone`,`celebration`],d=[`explicit_in_reset_post`,`explicit_in_related_source`,`contextual_inference`,`unknown`],ee=[`weekday`,`weekday_group`,`hour`,`six_hour_block`,`month`,`day_of_month`,`week_of_month`,`weekday_hour`,`minute_of_hour`,`five_minute_bucket`,`half_hour_slot`,`time_of_day_minute`],te=[`month`,`weekday`,`hour`,`six_hour_block`],f=e.number().finite(),p=f.min(0),m=e.number().int().min(0),h=e.number().int().positive(),g=f.min(0).max(1),_=e.iso.datetime({offset:!0}).refine(e=>e.endsWith(`Z`),{message:`utc_timestamp_required`}).refine(e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/.test(e),{message:`utc_timestamp_seconds_required`}),v=e.string().min(1).max(128).refine(e=>e===e.trim()&&!/[\p{Cc}\p{Cf}]/u.test(e),{message:`public_id_invalid`}),y=e.enum(a),ne=e.enum(u),re=e.enum(d),ie=e.object({contractVersion:e.literal(1),eventId:v,eventType:e.literal(`reset_analysis_snapshot_available`),analysisSnapshotId:v,sourceWatermark:v,occurredAt:_}).strict();function ae(e){return ie.parse(e)}function oe(e){return[...e].length}function se(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength}const ce=e.string().refine(e=>oe(e)<=i.text.evidenceExcerptCodePoints,{message:`evidence_excerpt_too_long`}),le=e.string().refine(e=>e.trim().length>0,{message:`source_text_empty`}),ue=e.string().refine(e=>oe(e)<=i.text.publicTextCodePoints,{message:`public_text_too_long`}),de=e.string().refine(e=>e.trim().length>0,{message:`source_account_display_name_blank`}).refine(e=>oe(e)<=i.text.publicTextCodePoints,{message:`source_account_display_name_too_long`}),fe=e.string().refine(e=>oe(e)<=i.text.urlCodePoints,{message:`source_url_too_long`}).refine(e=>{if([...e].some(e=>{let t=e.codePointAt(0);return t===void 0||t<=31||t===127}))return!1;try{let t=new URL(e);return t.protocol===`https:`&&t.username.length===0&&t.password.length===0}catch{return!1}},{message:`https_url_required`});function b(e){return new Set(e).size===e.length}const pe=e.discriminatedUnion(`state`,[e.object({state:e.literal(`known`),values:e.array(e.enum(o)).min(1).refine(b,{message:`reset_effects_must_be_unique`})}).strict(),e.object({state:e.literal(`unknown`),values:e.tuple([])}).strict()]),me=e.object({products:e.array(e.enum(s)).refine(b,{message:`products_must_be_unique`}),audienceClaims:e.array(e.object({audience:e.enum(c),plans:e.array(e.enum(l)).refine(b,{message:`plans_must_be_unique`}),subsetSummary:ue.nullable()}).strict())}).strict(),he=e.object({resetActionId:v,firstAnnouncedAt:_,effectiveAt:_.nullable(),resetEffects:pe,actionScope:me,reasonCategories:e.array(ne).refine(b,{message:`reason_categories_must_be_unique`}),noticeCount:h,previousAllActionDays:p.nullable(),previousHardResetActionDays:p.nullable(),previousBankedResetActionDays:p.nullable()}).strict(),ge=e.object({series:y,previousActionId:v,actionId:v,fromFirstAnnouncedAt:_,toFirstAnnouncedAt:_,days:p}).strict(),_e=e.object({count:h,min:p,max:p,mean:p,median:p,percentile25:p,percentile75:p,percentile90:p,standardDeviation:p,coefficientOfVariation:p.nullable(),interquartileRange:p}).strict(),ve=e.object({lower:p,upper:p}).strict(),ye=e.object({iterations:h,seed:e.number().int(),mean95:ve,median95:ve}).strict(),be=e.object({bucket:e.string().min(1),lowerInclusive:p,upperExclusive:p.nullable(),count:m,share:g}).strict(),xe=e.object({endingIndex:m,windowSize:h,mean:p,median:p}).strict(),Se=e.object({firstHalf:_e.nullable(),secondHalf:_e.nullable(),meanChangeDays:f.nullable(),meanChangePercent:f.nullable()}).strict(),Ce=e.object({series:y,actionCount:m,completedIntervalCount:m,intervalSummary:_e.nullable(),bootstrap95:ye.nullable(),intervalHistogram:e.array(be),shortestIntervals:e.array(ge),longestIntervals:e.array(ge),rolling3:e.array(xe),rolling5:e.array(xe),linearSlopeDaysPerInterval:f.nullable(),halfComparison:Se,survivalCurve:e.array(e.object({elapsedDays:p,survivalProbability:g}).strict())}).strict(),we=e.object({series:y,elapsedDays:p,horizonDays:p,sampleAtRisk:m,eventsWithinWindow:m,probability:g.nullable()}).strict(),Te=e.object({key:e.string(),count:m,share:g,timeZone:e.string().min(1),series:y,dimension:e.enum(ee)}).strict(),Ee=e.object({timeZone:e.string().min(1),series:y,dimension:e.enum(ee),categoryCount:h,nonZeroCategoryCount:m,maxShare:g,herfindahlIndex:g,normalizedEntropy:g}).strict(),De=e.object({startMinute:e.number().int().min(0).max(1439),endMinute:e.number().int().min(0).max(1439),wrapsMidnight:e.boolean(),eventCount:m,share:g}).strict(),Oe=e.object({timeZone:e.string().min(1),series:y,eventCount:h,slotMinutes:h,fixedWindows:e.array(e.object({durationMinutes:h,bestWindows:e.array(De)}).strict()),coverageWindows:e.array(e.object({targetShare:g,requiredEventCount:h,durationMinutes:h,bestWindows:e.array(De)}).strict())}).strict(),ke=e.object({series:y,thresholdDays:p,clusterCount:m,multiEventClusterCount:m,largestClusterSize:m,eventsInMultiEventClusters:m,eventShareInMultiEventClusters:g}).strict(),Ae=e.object({category:ne,actionCount:m,actionShare:g,hardResetActionCount:m,bankedResetActionCount:m,explicitInResetPostCount:m,explicitInRelatedSourceCount:m,contextualInferenceCount:m,unknownCount:m}).strict(),je=e.object({category:ne,series:y,timeZone:e.string().min(1),dimension:e.enum(te),key:e.string(),eventCount:m,reasonEventCount:m,binEventCount:m,seriesEventCount:m,shareWithinReason:g.nullable(),shareWithinBin:g.nullable(),shareOfSeries:g.nullable()}).strict(),Me=e.object({overview:e.object({actionCount:h,hardResetActionCount:m,bankedResetActionCount:m,firstAnnouncedAt:_,lastAnnouncedAt:_,coverageDays:p,sourceNoticeCount:h}).strict(),actions:e.array(he).min(1).max(i.analysis.actions),intervals:e.array(ge).max(i.analysis.intervals),series:e.object({all:Ce,hard_reset:Ce,banked_reset:Ce}).strict(),historicalConditionalFrequencies:e.array(we),calendars:e.array(Te),calendarConcentrations:e.array(Ee),intradayRanges:e.array(Oe),clusters:e.array(ke),reasons:e.object({summary:e.array(Ae),crossTabs:e.array(je)}).strict(),caveats:e.array(ue.min(1))}).strict(),Ne=e.object({contractVersion:e.literal(1),analyzerContractVersion:e.literal(4),generatedAt:_,analysisWindow:e.object({startAt:_,startInclusive:e.boolean(),timeBasis:e.literal(`first_announcement`),throughFirstAnnouncedAt:_}).strict(),result:Me}).strict().superRefine((e,t)=>{let n=e.result.actions,r=e.result.overview;n.length!==r.actionCount&&t.addIssue({code:`custom`,message:`analysis_action_count_mismatch`,path:[`result`,`actions`]});let i=new Set;for(let e=0;e<n.length;e+=1){let r=n[e];i.has(r.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_action_identity_duplicate`,path:[`result`,`actions`,e,`resetActionId`]}),i.add(r.resetActionId);let a=n[e-1];a!==void 0&&(a.firstAnnouncedAt>r.firstAnnouncedAt||a.firstAnnouncedAt===r.firstAnnouncedAt&&a.resetActionId>r.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_actions_not_stably_sorted`,path:[`result`,`actions`,e]})}let o=(e,r,i)=>{i!==void 0&&e.series!==i&&t.addIssue({code:`custom`,message:`analysis_interval_series_mismatch`,path:[...r,`series`]});let a=i??e.series,o=a===`all`?n:n.filter(e=>e.resetEffects.state===`known`&&e.resetEffects.values.includes(a)),s=o.findIndex(t=>t.resetActionId===e.actionId),c=o[s];if(c===void 0){t.addIssue({code:`custom`,message:`analysis_interval_action_mismatch`,path:[...r,`actionId`]});return}let l=o[s-1];(l===void 0||e.previousActionId!==l.resetActionId)&&t.addIssue({code:`custom`,message:`analysis_interval_previous_action_mismatch`,path:[...r,`previousActionId`]}),l!==void 0&&e.fromFirstAnnouncedAt!==l.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_interval_from_first_announcement_mismatch`,path:[...r,`fromFirstAnnouncedAt`]}),e.toFirstAnnouncedAt!==c.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_interval_to_first_announcement_mismatch`,path:[...r,`toFirstAnnouncedAt`]})};e.result.intervals.forEach((e,t)=>o(e,[`result`,`intervals`,t]));for(let t of a){let n=e.result.series[t];for(let e of[`shortestIntervals`,`longestIntervals`])n[e].forEach((n,r)=>o(n,[`result`,`series`,t,e,r],t))}n[0]?.firstAnnouncedAt!==r.firstAnnouncedAt&&t.addIssue({code:`custom`,message:`analysis_first_action_mismatch`,path:[`result`,`overview`,`firstAnnouncedAt`]}),(n.at(-1)?.firstAnnouncedAt!==r.lastAnnouncedAt||e.analysisWindow.throughFirstAnnouncedAt!==r.lastAnnouncedAt)&&t.addIssue({code:`custom`,message:`analysis_last_action_mismatch`,path:[`result`,`overview`,`lastAnnouncedAt`]});for(let[n,r]of Object.entries({all:`all`,hard_reset:`hard_reset`,banked_reset:`banked_reset`}))e.result.series[n].series!==r&&t.addIssue({code:`custom`,message:`analysis_series_identity_mismatch`,path:[`result`,`series`,n,`series`]})}),Pe=e.object({excerpt:ce,sourceUrl:fe}).strict();function Fe(e,t){try{return Ue(e,t)}catch{return}}function Ie(e,t){try{return C(e,t)}catch{return}}const x=e.object({contractVersion:e.literal(1),resetActionId:v,firstAnnouncedAt:_,effectiveAt:_.nullable(),resetEffects:pe,actionScope:me,noticeCount:h,reasons:e.array(e.object({category:ne,summary:ue.min(1),basis:re,evidence:e.array(Pe).min(1)}).strict()).max(i.actionDetail.reasons),noticeTimeline:e.array(e.object({phase:e.enum([`preview`,`executed`]),authoredAt:_,contentCompleteness:e.enum([`verified_full_text`,`verified_excerpt`]),sourceText:le,sourceTextZh:le.nullable(),sourceUrl:fe,sourceAccount:e.object({displayName:de}).strict()}).strict()).min(1).max(i.actionDetail.noticeTimeline)}).strict().superRefine((e,n)=>t(e,n,C)),Le=[`preview`,`executed`,`schedule_change`,`scope_change`,`cancel_preview`,`delivery_issue`,`make_up`,`repair`,`update`],Re=e.object({resolution:e.enum([`resolved`,`unbounded`,`unresolved`]),evidence:e.string().trim().min(1).max(300).nullable(),precision:e.enum([`exact`,`approximate`,`range`]).nullable(),relation:e.enum([`instant`,`interval`,`deadline`,`not_before`,`unbounded`]).nullable(),effectiveWindow:e.object({earliestAt:e.iso.datetime(),latestAt:e.iso.datetime()}).strict().refine(e=>Date.parse(e.earliestAt)<=Date.parse(e.latestAt),{message:`publication_timing_window_inverted`}).nullable()}).strict().superRefine((e,t)=>{let n=e=>t.addIssue({code:`custom`,message:e});e.resolution===`resolved`!=(e.effectiveWindow!==null)&&n(`publication_timing_resolution_window_mismatch`),e.resolution===`unbounded`&&e.relation!==`unbounded`&&n(`publication_timing_unbounded_relation_required`);let r=e.effectiveWindow;e.resolution===`resolved`&&((e.relation===null||e.relation===`unbounded`)&&n(`publication_timing_bounded_relation_required`),r!==null&&e.relation===`interval`==(r.earliestAt===r.latestAt)&&n(`publication_timing_relation_window_mismatch`))}),S=e.object({resetActionId:v,state:e.enum([`preview`,`executed`]),resetEffects:pe,executedEffects:e.array(e.enum(o)).refine(b),pendingEffects:e.array(e.enum(o)).refine(b),plannedTiming:Re.nullable(),noticeTimeline:e.array(x.shape.noticeTimeline.element.omit({phase:!0}).extend({kinds:e.array(e.enum(Le)).min(1).refine(b)}).strict()).min(1).max(i.actionDetail.noticeTimeline)}).strict().superRefine((e,t)=>{e.state===`preview`&&e.executedEffects.length>0&&t.addIssue({code:`custom`,message:`pending_preview_has_executed_effects`}),e.state===`executed`&&e.pendingEffects.length===0&&t.addIssue({code:`custom`,message:`pending_executed_action_has_no_pending_effects`});for(let n of[...e.executedEffects,...e.pendingEffects])new Set(e.resetEffects.values).has(n)||t.addIssue({code:`custom`,message:`pending_effect_not_declared`});e.executedEffects.some(t=>e.pendingEffects.includes(t))&&t.addIssue({code:`custom`,message:`pending_effect_already_executed`});for(let n=1;n<e.noticeTimeline.length;n+=1){let r=e.noticeTimeline[n-1],i=e.noticeTimeline[n],a=Ie(r.authoredAt,i.authoredAt);a!==void 0&&a>0&&t.addIssue({code:`custom`,message:`pending_notice_timeline_not_ascending`,path:[`noticeTimeline`,n]})}}),ze=e.object({contractVersion:e.literal(1),generatedAt:_,analysis:Ne,actions:e.array(x).min(1).max(i.analysis.actions),pendingResetActions:e.array(S).max(i.analysis.actions)}).strict();function Be(e,t){se(e)>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]});let n=Ie(e.generatedAt,e.analysis.generatedAt);n!==void 0&&n<0&&t.addIssue({code:`custom`,message:`export_generated_at_before_analysis`,path:[`generatedAt`]})}function Ve(e,t,n,r){(e.resetActionId!==t.resetActionId||e.firstAnnouncedAt!==t.firstAnnouncedAt||e.effectiveAt!==t.effectiveAt||e.noticeCount!==t.noticeCount||JSON.stringify(e.resetEffects)!==JSON.stringify(t.resetEffects)||JSON.stringify(e.actionScope)!==JSON.stringify(t.actionScope))&&r.addIssue({code:`custom`,message:`export_action_summary_mismatch`,path:[`actions`,n]});let i=[...new Set(e.reasons.map(e=>e.category))].sort();JSON.stringify(i)!==JSON.stringify([...t.reasonCategories].sort())&&r.addIssue({code:`custom`,message:`export_action_reason_categories_mismatch`,path:[`actions`,n,`reasons`]})}const He=ze.superRefine((e,t)=>{Be(e,t),b(e.pendingResetActions.map(e=>e.resetActionId))||t.addIssue({code:`custom`,message:`export_pending_action_identity_duplicate`,path:[`pendingResetActions`]});let n=new Map,r=new Set(e.analysis.result.actions.map(e=>e.resetActionId));for(let i=0;i<e.actions.length;i+=1){let a=e.actions[i];n.has(a.resetActionId)?t.addIssue({code:`custom`,message:`export_action_identity_duplicate`,path:[`actions`,i,`resetActionId`]}):n.set(a.resetActionId,i);let o=e.actions[i-1],s=o===void 0?void 0:Fe(o,a);s!==void 0&&s>0&&t.addIssue({code:`custom`,message:`export_actions_not_stably_sorted`,path:[`actions`,i]});let c=Ie(a.firstAnnouncedAt,e.analysis.analysisWindow.throughFirstAnnouncedAt);c!==void 0&&c>0&&t.addIssue({code:`custom`,message:`export_action_after_analysis_snapshot`,path:[`actions`,i,`firstAnnouncedAt`]});let l=Ie(a.firstAnnouncedAt,e.analysis.analysisWindow.startAt);l!==void 0&&(e.analysis.analysisWindow.startInclusive?l>=0:l>0)&&!r.has(a.resetActionId)&&t.addIssue({code:`custom`,message:`export_window_action_not_in_analysis`,path:[`actions`,i,`resetActionId`]})}for(let r of e.analysis.result.actions){let i=n.get(r.resetActionId);if(i===void 0){t.addIssue({code:`custom`,message:`export_analysis_action_missing`,path:[`actions`]});continue}Ve(e.actions[i],r,i,t)}});function C(e,t){let n=/^(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2})(?:\.(\d+))?Z$/,r=n.exec(e),i=n.exec(t);if(r===null||i===null)throw Error(`radar_reset_v1_timestamp_invalid`);let a=r[1],o=i[1];if(a<o)return-1;if(a>o)return 1;let s=r[2]??``,c=i[2]??``,l=Math.max(s.length,c.length);for(let e=0;e<l;e+=1){let t=s.charCodeAt(e)||48,n=c.charCodeAt(e)||48;if(t<n)return-1;if(t>n)return 1}return 0}function Ue(e,t){let n=C(e.firstAnnouncedAt,t.firstAnnouncedAt);return n===0?e.resetActionId<t.resetActionId?-1:+(e.resetActionId>t.resetActionId):n}function We(e){return Ne.parse(e)}function Ge(e){return x.parse(e)}function Ke(e){return He.parse(e)}function qe(e){return S.parse(e)}function Je(e){let t;try{t=Ge(e)}catch(e){throw Error(`radar_reset_primary_source_action_invalid`,{cause:e})}let n=t.noticeTimeline[0];if(n===void 0)throw Error(`radar_reset_primary_source_notice_missing`);return Object.freeze({displayName:n.sourceAccount.displayName,sourceUrl:n.sourceUrl,excerpt:[...n.sourceText.trim()].slice(0,i.text.publicTextCodePoints).join(``)})}const Ye=2,Xe=30,Ze=256,Qe=512*1024,$e=256,et=256*1024,tt=32,nt=2*1024*1024,rt=9223372036854775807n,it=e.string().regex(/^(?:0|[1-9][0-9]{0,18})$/,`uint64_decimal_noncanonical`).refine(e=>BigInt(e)<=rt,`uint64_decimal_out_of_range`),w=e.string().regex(/^[1-9][0-9]{0,18}$/,`positive_decimal_noncanonical`).refine(e=>BigInt(e)<=rt,`positive_decimal_out_of_range`);function at(e){return it.parse(e)}function ot(e){return w.parse(e)}function st(e){return BigInt(at(e))}function ct(e){if(e<0n||e>rt)throw RangeError(`uint64_decimal_out_of_range`);return e.toString()}function lt(e){if(e<1n||e>rt)throw RangeError(`positive_decimal_out_of_range`);return e.toString()}const T=e.iso.datetime({offset:!0}).refine(e=>e.endsWith(`Z`),`utc_timestamp_required`).refine(e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$/.test(e),`utc_timestamp_seconds_required`),E=e.string().min(1).max(128).refine(e=>e===e.trim()&&!/[\p{Cc}\p{Cf}]/u.test(e),`public_id_invalid`),D=e.string().regex(/^sha256:[0-9a-f]{64}$/,`sha256_noncanonical`);function ut(e){return new Set(e).size===e.length}const dt=t=>e.array(t).refine(ut,`array_values_must_be_unique`),ft=t=>e.string().refine(e=>[...e].length<=t,`string_exceeds_${t}_code_points`),pt=e.number().finite().min(0),mt=e.number().int().min(0).max(2**53-1),ht=e.number().int().positive().max(2**53-1),gt=e.enum([`hard_reset`,`banked_reset`]),_t=e.enum([`codex`,`chatgpt_work`]),vt=e.enum([`all_users`,`paid_users`,`named_plans`,`affected_subset`]),yt=e.enum([`plus`,`pro`]),bt=e.enum([`incident_compensation`,`user_milestone`,`celebration`]),xt=e.object({resetActionId:E,firstAnnouncedAt:T,effectiveAt:T.nullable(),resetEffects:e.union([e.object({state:e.literal(`known`),values:dt(gt).nonempty()}).strict(),e.object({state:e.literal(`unknown`),values:e.tuple([])}).strict()]),actionScope:e.object({products:dt(_t),audienceClaims:e.array(e.object({audience:vt,plans:dt(yt),subsetSummary:ft(500).nullable()}).strict())}).strict(),reasonCategories:dt(bt),noticeCount:ht,previousAllActionDays:pt.nullable(),previousHardResetActionDays:pt.nullable(),previousBankedResetActionDays:pt.nullable()}).strict();function St(e){return xt.parse(e)}const Ct=e.object({generatedAt:T,availableRange:e.object({firstAnnouncedAt:T,lastAnnouncedAt:T}).strict().nullable(),current:e.object({summary:xt,status:e.object({phase:e.enum([`preview`,`executed`]),statusAt:T}).strict()}).strict().nullable()}).strict().superRefine((e,t)=>{if(e.availableRange===null!=(e.current===null)){t.addIssue({code:`custom`,message:`home_empty_state_inconsistent`});return}e.availableRange!==null&&e.current!==null&&e.current.summary.firstAnnouncedAt!==e.availableRange.lastAnnouncedAt&&t.addIssue({code:`custom`,message:`home_current_range_inconsistent`})});function wt(e){return Ct.parse(e)}const Tt=e.object({ordinal:mt,sha256:D,byteSize:ht}).strict(),Et=e.object({sha256:D,byteSize:ht,chunkCount:ht,chunks:e.array(Tt).min(1)}).strict().superRefine((e,t)=>{e.chunkCount!==e.chunks.length&&t.addIssue({code:`custom`,message:`chunk_count_mismatch`});let n=0;for(let[r,i]of e.chunks.entries())i.ordinal!==r&&t.addIssue({code:`custom`,message:`chunk_ordinal_invalid`}),n+=i.byteSize;n!==e.byteSize&&t.addIssue({code:`custom`,message:`detail_byte_size_mismatch`})}),Dt=e.object({lifecycleState:e.literal(`active`),actionOrdinal:w,summary:xt,detailManifest:Et}).strict(),Ot=e.object({lifecycleState:e.literal(`withdrawn`),actionOrdinal:w,resetActionId:E,lastActiveFirstAnnouncedAt:T}).strict(),kt=e.discriminatedUnion(`lifecycleState`,[Dt,Ot]),At=e.object({contractVersion:e.literal(2)}).strict(),jt=e.object({contractVersion:e.literal(2),revision:E,cursor:w.nullable()}).strict(),Mt=e.object({contractVersion:e.literal(2),revision:E,afterSequence:it}).strict(),Nt=e.object({resetActionId:E,ordinal:mt,sha256:D,byteSize:ht}).strict(),Pt=e.object({contractVersion:e.literal(2),revision:E,chunks:e.array(Nt).min(1).max(32)}).strict().superRefine((e,t)=>{e.chunks.reduce((e,t)=>e+t.byteSize,0)>2097152&&t.addIssue({code:`custom`,message:`detail_batch_too_large`}),ut(e.chunks.map(e=>`${e.resetActionId}\u0000${e.ordinal}`))||t.addIssue({code:`custom`,message:`detail_chunk_duplicate`})}),Ft=e.object({lifecycleState:e.enum([`active`,`withdrawn`]),firstAnnouncedAt:T.nullable(),contentSha256:D.nullable()}).strict().superRefine((e,t)=>{e.lifecycleState===`active`&&(e.firstAnnouncedAt===null||e.contentSha256===null)&&t.addIssue({code:`custom`,message:`active_change_state_incomplete`})}),It=e.object({sourceChangeSequence:w,introducedByRevision:E,resetActionId:E,kind:e.enum([`create`,`upsert`,`withdraw`]),activationKind:e.enum([`initial`,`restored`]).nullable(),activationOrdinal:w.nullable(),before:Ft.nullable(),after:Ft.nullable()}).strict().superRefine((e,t)=>{e.activationKind===null!=(e.activationOrdinal===null)&&t.addIssue({code:`custom`,message:`activation_pair_invalid`}),e.kind===`create`&&(e.activationKind!==`initial`||e.before!==null||e.after?.lifecycleState!==`active`)&&t.addIssue({code:`custom`,message:`create_change_invalid`}),e.kind===`withdraw`&&(e.activationKind!==null||e.before?.lifecycleState!==`active`||e.after?.lifecycleState!==`withdrawn`)&&t.addIssue({code:`custom`,message:`withdraw_change_invalid`}),e.kind===`upsert`&&e.activationKind===`initial`&&t.addIssue({code:`custom`,message:`upsert_activation_invalid`})}),Lt=e.object({minSequence:e.literal(`1`),maxSequence:w}).strict(),Rt=e.object({revision:E,projectionFingerprint:D,actionCount:mt,activeActionCount:mt,changeCoverage:Lt.nullable(),home:Ct}).strict().superRefine((e,t)=>{e.activeActionCount>e.actionCount&&t.addIssue({code:`custom`,message:`active_action_count_invalid`}),e.activeActionCount===0!=(e.home.availableRange===null)&&t.addIssue({code:`custom`,message:`head_home_count_inconsistent`})}),zt=e.object({revision:E,items:e.array(kt).max(256),nextCursor:w.nullable()}).strict().superRefine((e,t)=>{for(let n=1;n<e.items.length;n+=1){let r=e.items.at(n-1),i=e.items.at(n);if(r!==void 0&&i!==void 0&&BigInt(r.actionOrdinal)>=BigInt(i.actionOrdinal)){t.addIssue({code:`custom`,message:`action_ordinal_order_invalid`});break}}let n=e.items.at(-1);e.nextCursor!==null&&n?.actionOrdinal!==e.nextCursor&&t.addIssue({code:`custom`,message:`action_cursor_invalid`})}),Bt=e.object({revision:E,coverage:Lt.nullable(),items:e.array(It).max(256),nextAfterSequence:w.nullable()}).strict().superRefine((e,t)=>{for(let n=1;n<e.items.length;n+=1){let r=e.items.at(n-1),i=e.items.at(n);if(r!==void 0&&i!==void 0&&BigInt(r.sourceChangeSequence)+1n!==BigInt(i.sourceChangeSequence)){t.addIssue({code:`custom`,message:`change_sequence_gap`});break}}let n=e.items.at(-1);e.nextAfterSequence!==null&&n?.sourceChangeSequence!==e.nextAfterSequence&&t.addIssue({code:`custom`,message:`change_cursor_invalid`})}),Vt=t=>e.object({contractVersion:e.literal(2),ok:e.literal(!0),data:t}).strict(),Ht=Vt(Rt),Ut=Vt(zt),Wt=Vt(Bt),Gt=[`source_invalid_request`,`source_revision_unknown`,`source_cursor_invalid`,`source_chunk_mismatch`,`source_response_over_capacity`,`source_integrity_conflict`,`source_revision_identity_conflict`,`source_sequence_exhausted`,`source_temporarily_unavailable`,`source_rpc_transport_failure`,`source_stream_incomplete`];function Kt(e,t=0,n=new Set){if(t>4)return!1;if(e===null||typeof e==`boolean`)return!0;if(typeof e==`string`)return[...e].length<=1024;if(typeof e==`number`)return Number.isFinite(e);if(typeof e!=`object`||n.has(e))return!1;if(n.add(e),Array.isArray(e))return e.length>16?!1:e.every(e=>Kt(e,t+1,n));let r=Object.entries(e);return r.length>16?!1:r.every(([,e])=>Kt(e,t+1,n))}const qt=e.record(e.string(),e.unknown()).refine(e=>Kt(e),`safe_cause_invalid`).refine(e=>new TextEncoder().encode(JSON.stringify(e)).byteLength<=8192,`safe_cause_too_large`),Jt=e.object({code:e.enum(Gt),operation:E,stage:E,revision:E.optional(),retryable:e.boolean(),correlationId:E,cause:qt}).strict(),Yt=e.object({contractVersion:e.literal(2),ok:e.literal(!1),error:Jt}).strict(),Xt=e.object({contractVersion:e.literal(2),eventType:e.literal(`reset_publication_revision_available`),eventId:e.string().regex(/^reset_pub_v2_[0-9a-f]{64}$/),revision:E,changeHighWater:it,projectionFingerprint:D,occurredAt:T}).strict();function Zt(e){return At.parse(e)}function Qt(e){return jt.parse(e)}function $t(e){return Mt.parse(e)}function en(e){return Pt.parse(e)}function tn(e){return Ht.parse(e)}function nn(e){return Ut.parse(e)}function rn(e){return Wt.parse(e)}function an(e){return Yt.parse(e)}function on(e){return Xt.parse(e)}var sn=class extends Error{code;operation;stage;retryable;constructor(e){super(`${e.code}:${e.stage}`,{cause:e.cause}),this.name=`RadarResetSourceContractErrorV2`,this.code=e.code,this.operation=e.operation,this.stage=e.stage,this.retryable=e.retryable}};const O=new TextEncoder,cn=new TextDecoder(`utf-8`,{fatal:!0});function ln(e,t,n){if(n+t.byteLength>e.byteLength)return!1;for(let r=0;r<t.byteLength;r+=1)if(e.at(n+r)!==t.at(r))return!1;return!0}function un(e,t){if(t.byteLength===0)return!0;for(let n=0;n<=e.byteLength-t.byteLength;n+=1)if(ln(e,t,n))return!0;return!1}function dn(e){let t=e.reduce((e,t)=>e+t.byteLength,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.byteLength;return n}function fn(e){let t=``;for(let n=0;n<e.byteLength;n+=32768)t+=String.fromCharCode(...e.slice(n,n+32768));return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/u,``)}function pn(e){if(!/^[A-Za-z0-9_-]+$/u.test(e))throw Error(`base64url_noncanonical`);let t=(4-e.length%4)%4,n=`${e.replaceAll(`-`,`+`).replaceAll(`_`,`/`)}${`=`.repeat(t)}`,r=atob(n),i=Uint8Array.from(r,e=>e.charCodeAt(0));if(fn(i)!==e)throw Error(`base64url_noncanonical`);return i}async function mn(e){let t=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return`sha256:${[...new Uint8Array(await crypto.subtle.digest(`SHA-256`,t))].map(e=>e.toString(16).padStart(2,`0`)).join(``)}`}function hn(e){for(let t=0;t<64;t+=1){let t=`radar-reset-v2-${[...crypto.getRandomValues(new Uint8Array(24))].map(e=>e.toString(16).padStart(2,`0`)).join(``)}`,n=O.encode(`--${t}`);if(!e.some(e=>un(e,n)))return t}throw Error(`multipart_boundary_generation_failed`)}async function gn(e){let t=E.parse(e.revision),n=E.parse(e.correlationId),r=Pt.parse({contractVersion:2,revision:t,chunks:e.parts.map(({bytes:e,...t})=>t)}),i=e.parts.map((e,t)=>({...r.chunks[t],bytes:new Uint8Array(e.bytes)}));for(let e of i)if(e.bytes.byteLength!==e.byteSize||await mn(e.bytes)!==e.sha256)throw new sn({code:`source_chunk_mismatch`,operation:`readDetailBatch`,stage:`detail_encode`,retryable:!1});let a=hn(i.map(e=>e.bytes)),o=[];for(let e of i)o.push(O.encode(`--${a}\r\nContent-Type: application/octet-stream\r
2
+ X-Radar-Reset-Action-Id-B64: ${fn(O.encode(e.resetActionId))}\r\nX-Radar-Detail-Ordinal: ${e.ordinal}\r\nX-Radar-Byte-Size: ${e.byteSize}\r\nX-Radar-SHA-256: ${e.sha256}\r\n\r\n`)),o.push(e.bytes,O.encode(`\r
3
+ `));o.push(O.encode(`--${a}--\r\n`));let s=dn(o),c=s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength);return new Response(c,{status:200,headers:{"Cache-Control":`no-store`,"Content-Type":`multipart/mixed; boundary=${a}`,"X-Radar-Correlation-Id":n,"X-Radar-Part-Count":String(i.length),"X-Radar-Revision-B64":fn(O.encode(t))}})}function k(e,t,n){throw new sn({code:e,operation:`readDetailBatch`,stage:`detail_stream`,retryable:t,cause:n})}async function _n(e){if(e.body===null)return k(`source_stream_incomplete`,!0);let t=e.body.getReader(),n=[],r=0;try{for(;;){let e=await t.read();if(e.done)break;if(r+=e.value.byteLength,r>2162688){try{await t.cancel()}catch{}return k(`source_response_over_capacity`,!1)}n.push(e.value)}}catch(e){return k(`source_stream_incomplete`,!0,e)}finally{t.releaseLock()}return dn(n)}function vn(e,t){let n=e.headers.get(t);return n===null||n.includes(`,`)?k(`source_chunk_mismatch`,!1):n}function yn(e){if([...e].some(e=>e>127))return k(`source_chunk_mismatch`,!1);let t=String.fromCharCode(...e),n=new Map,r=new Set([`content-type`,`x-radar-reset-action-id-b64`,`x-radar-detail-ordinal`,`x-radar-byte-size`,`x-radar-sha-256`]);for(let e of t.split(`\r
4
+ `)){let t=e.indexOf(`:`);if(t<=0||e.slice(t+1,t+2)!==` `)return k(`source_chunk_mismatch`,!1);let i=e.slice(0,t).toLowerCase(),a=e.slice(t+2);if(!r.has(i)||n.has(i)||a.length===0)return k(`source_chunk_mismatch`,!1);n.set(i,a)}return n.size===r.size?n:k(`source_chunk_mismatch`,!1)}function bn(e,t,n){for(let r=n;r<=e.byteLength-t.byteLength;r+=1)if(ln(e,t,r))return r;return-1}async function xn(e,t){let n=Pt.parse({contractVersion:2,revision:t.revision,chunks:t.chunks});if(e.status!==200)return k(`source_chunk_mismatch`,!1);let r=vn(e,`Content-Type`),i=/^multipart\/mixed; boundary=(radar-reset-v2-[0-9a-f]{48})$/u.exec(r);if(i===null)return k(`source_chunk_mismatch`,!1);let a=i[1];if(vn(e,`Cache-Control`)!==`no-store`)return k(`source_chunk_mismatch`,!1);E.parse(vn(e,`X-Radar-Correlation-Id`));let o=vn(e,`X-Radar-Part-Count`);if(!/^[1-9][0-9]*$/u.test(o)||Number(o)>32||Number(o)!==n.chunks.length)return k(`source_chunk_mismatch`,!1);let s;try{s=cn.decode(pn(vn(e,`X-Radar-Revision-B64`)))}catch(e){return k(`source_chunk_mismatch`,!1,e)}if(s!==n.revision)return k(`source_chunk_mismatch`,!1);let c=await _n(e),l=O.encode(`--${a}\r\n`),u=O.encode(`--${a}--\r\n`),d=O.encode(`\r
5
5
  \r
6
- `),ee=k.encode(`\r
7
- `),te=[],f=0;for(let e of n.chunks){if(!A(c,l,f))return j(`source_stream_incomplete`,!0);f+=l.byteLength;let t=_n(c,d,f);if(t<0)return j(`source_stream_incomplete`,!0);let n=gn(c.slice(f,t));if(f=t+d.byteLength,n.get(`content-type`)!==`application/octet-stream`)return j(`source_chunk_mismatch`,!1);let r;try{r=sn.decode(dn(n.get(`x-radar-reset-action-id-b64`)))}catch(e){return j(`source_chunk_mismatch`,!1,e)}if(r!==e.resetActionId||n.get(`x-radar-detail-ordinal`)!==String(e.ordinal)||n.get(`x-radar-byte-size`)!==String(e.byteSize)||n.get(`x-radar-sha-256`)!==e.sha256)return j(`source_chunk_mismatch`,!1);if(f+e.byteSize+ee.byteLength>c.byteLength)return j(`source_stream_incomplete`,!0);let i=c.slice(f,f+e.byteSize);if(f+=e.byteSize,!A(c,ee,f)||(f+=ee.byteLength,await fn(i)!==e.sha256))return j(`source_chunk_mismatch`,!1);te.push({...e,bytes:i})}return!A(c,u,f)||f+u.byteLength!==c.byteLength?j(`source_stream_incomplete`,!0):te}const yn=/authorization|cookie|token|secret|password|api[-_]?key/iu;function bn(e,t){let n=[...e].slice(0,1024),r=``;for(let e of n){let n=k.encode(e).byteLength;if(n>t.remaining)break;t.remaining-=n,r+=e}return r}function xn(e,t,n,r){if(e===null||typeof e==`boolean`)return e;if(typeof e==`string`)return bn(e,n);if(typeof e==`number`)return Number.isFinite(e)?e:String(e);if(typeof e==`bigint`||typeof e==`symbol`)return bn(String(e),n);if(e===void 0)return`undefined`;if(typeof e==`function`)return`[Function ${e.name||`anonymous`}]`;if(r.has(e))return`[Circular]`;if(t>=4)return`[DepthLimit]`;if(r.add(e),Array.isArray(e))return e.slice(0,16).map(e=>xn(e,t+1,n,r));let i={},a=e instanceof Error?[[`type`,e.constructor.name],[`name`,e.name],[`message`,e.message],...e.cause===void 0?[]:[[`cause`,e.cause]],...Object.entries(e)]:Object.entries(e);for(let[e,o]of a.slice(0,16)){let a=bn(String(e),n);if(!(a.length===0||Object.hasOwn(i,a))&&(n.remaining-=Math.min(n.remaining,8),i[a]=yn.test(a)?`[REDACTED]`:xn(o,t+1,n,r),n.remaining<=0))break}return i}function Sn(e){let t=xn(e,0,{remaining:7e3},new Set),n=typeof t==`object`&&t&&!Array.isArray(t)?t:{type:e===null?`null`:typeof e,message:t};return Kt.parse(n),n}function Cn(e){return e===`source_temporarily_unavailable`||e===`source_rpc_transport_failure`||e===`source_stream_incomplete`}function wn(e){switch(e){case`source_invalid_request`:return 400;case`source_revision_unknown`:return 404;case`source_cursor_invalid`:case`source_chunk_mismatch`:return 409;case`source_response_over_capacity`:return 413;case`source_temporarily_unavailable`:case`source_rpc_transport_failure`:case`source_stream_incomplete`:return 503;case`source_integrity_conflict`:case`source_revision_identity_conflict`:case`source_sequence_exhausted`:return 500}}function Tn(e){let t={contractVersion:2,ok:!1,error:{code:e.code,operation:e.operation,stage:e.stage,...e.revision===void 0?{}:{revision:e.revision},retryable:Cn(e.code),correlationId:e.correlationId,cause:Sn(e.cause)}};return Jt.parse(t)}const En=e.strictObject({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),Dn=e.iso.date(),N=e.strictObject({category:e.enum([`improvement`,`direct_reset`,`reset_card`]),deliveryState:e.enum([`preview`,`landed`]),description:En,dateBasis:e.enum([`occurrence`,`announcement`,`unresolved`]),sourceUrls:e.array(e.url({protocol:/^https?$/})).min(1)}),On=e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`ready`),text:En}),e.strictObject({state:e.enum([`pending`,`failed`,`not_applicable`]),text:e.null()})]),P=e.strictObject({contractVersion:e.literal(1),generatedAt:e.iso.datetime(),timeZone:e.string().refine(e=>{try{return new Intl.DateTimeFormat(`en`,{timeZone:e}),!0}catch{return!1}},`Invalid source time zone`),startDate:Dn,endDate:Dn,processing:e.strictObject({hasPending:e.boolean(),hasFailures:e.boolean()}),days:e.array(e.strictObject({date:Dn,dayNumber:e.number().int().min(1).max(28),outcome:e.enum([`unconfirmed`,`improvement`,`reset`,`both`]),entries:e.array(N),summary:On})).length(28),undatedEntries:e.array(N)}).superRefine((e,t)=>{let n=Date.parse(`${e.startDate}T00:00:00Z`);for(let[r,i]of e.days.entries()){let e=new Date(n+r*864e5).toISOString().slice(0,10);(i.date!==e||i.dayNumber!==r+1)&&t.addIssue({code:`custom`,path:[`days`,r],message:`Days must be contiguous and numbered in order`}),i.entries.some(e=>e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`days`,r,`entries`],message:`Unresolved dates belong in undatedEntries`});let a=i.entries.filter(e=>e.deliveryState===`landed`),o=a.some(e=>e.category===`improvement`),s=a.some(e=>e.category!==`improvement`),c=o?s?`both`:`improvement`:s?`reset`:`unconfirmed`;(i.outcome!==c||a.length===0!=(i.summary.state===`not_applicable`))&&t.addIssue({code:`custom`,path:[`days`,r],message:`Outcome and summary must reflect landed evidence`})}e.days.at(-1)?.date!==e.endDate&&t.addIssue({code:`custom`,path:[`endDate`],message:`End must match the last activity day`}),e.undatedEntries.some(e=>e.dateBasis!==`unresolved`)&&t.addIssue({code:`custom`,path:[`undatedEntries`],message:`Undated entries must have unresolved dates`})});function kn(e){return P.parse(e)}function An(e){let t=e.filter(e=>e.deliveryState===`landed`),n=t.some(e=>e.category===`improvement`),r=t.some(e=>e.category!==`improvement`);return n?r?`both`:`improvement`:r?`reset`:`unconfirmed`}const jn=524288,F=P.shape,Mn=F.days.element,Nn=N.extend({date:F.startDate.nullable()}).superRefine((e,t)=>{e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}),Pn=e.strictObject({state:e.enum([`unconfirmed`,`ongoing`,`ended`]),sourceUrls:e.array(N.shape.sourceUrls.element)}).superRefine((e,t)=>{e.state!==`unconfirmed`&&e.sourceUrls.length===0&&t.addIssue({code:`custom`,path:[`sourceUrls`],message:`Confirmed lifecycle states require source evidence`})}),Fn=Mn.omit({date:!0,entries:!0}).extend({entries:e.array(Nn),lifecycle:Pn}),I=e.strictObject({contractVersion:e.literal(2),generatedAt:F.generatedAt,timeZone:F.timeZone,processing:F.processing,days:e.array(Fn).length(28),unassignedEntries:e.array(Nn)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries()){r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`});let e=r.entries.filter(e=>e.deliveryState===`landed`),i=An(r.entries);(r.outcome!==i||e.length===0!=(r.summary.state===`not_applicable`))&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome and summary must reflect landed evidence`})}});function In(e){return I.parse(e)}const Ln=jn,L=e.strictObject({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),Rn=N.extend({title:L}),zn=I.shape,Bn=zn.days.element,Vn=Bn.shape.entries.element.safeExtend({title:L}),Hn=Bn.extend({title:L.nullable(),entries:e.array(Vn)}).superRefine((e,t)=>{e.title!==null!=(e.summary.state===`ready`)&&t.addIssue({code:`custom`,path:[`title`],message:`A daily title is available exactly when its summary is ready`})}),Un=e.strictObject({...zn,contractVersion:e.literal(3),days:e.array(Hn),unassignedEntries:e.array(Vn)}).superRefine((e,t)=>{let n=I.safeParse({contractVersion:2,generatedAt:e.generatedAt,timeZone:e.timeZone,processing:e.processing,days:e.days.map(({title:e,...t})=>({...t,entries:t.entries.map(({title:e,...t})=>t)})),unassignedEntries:e.unassignedEntries.map(({title:e,...t})=>t)});if(!n.success)for(let e of n.error.issues)t.addIssue({...e})});function Wn(e){return{improvementDays:e.days.filter(e=>e.outcome===`improvement`||e.outcome===`both`).length,resetDays:e.days.filter(e=>e.outcome===`reset`||e.outcome===`both`).length}}function Gn(e){return Un.parse(e)}const Kn=Ln,qn=I.shape,Jn=Un.shape.unassignedEntries,Yn=qn.days.element.omit({summary:!0}).extend({entries:Jn}),Xn=e.strictObject({...qn,contractVersion:e.literal(4),days:e.array(Yn).length(28),unassignedEntries:Jn}).superRefine((e,t)=>{for(let[n,r]of e.days.entries())r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`}),r.outcome!==An(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function Zn(e){return Xn.parse(e)}function Qn(e,t){let n=new Set;for(let r of e)n.has(r.eventId)&&t.addIssue({code:`custom`,message:`Duplicate activity eventId`}),n.add(r.eventId)}function $n(e,t,n){let r=n.reduce((t,n)=>t+e.reactionCounts[n],0);(!Number.isSafeInteger(r)||r!==e.reactionTotal)&&t.addIssue({code:`custom`,path:[`reactionTotal`],message:`Total must equal all reaction counts`})}async function er(e,t,n){if(e.status!==200){let t={status:e.status,statusText:e.statusText};try{await e.body?.cancel()}catch(e){throw Error(`activity_file_http_error`,{cause:{...t,cancellationCause:e}})}throw Error(`activity_file_http_error`,{cause:t})}if(e.body===null)throw Error(`activity_file_body_missing`);let r=e.body.getReader(),i=[],a=0;try{for(;;){let e=await r.read();if(e.done)break;if(a+=e.value.byteLength,a>n)throw Error(`activity_file_too_large`,{cause:{maxBytes:n,observedBytes:a}});i.push(e.value)}let e=new Uint8Array(a),o=0;for(let t of i)e.set(t,o),o+=t.byteLength;return t.parse(JSON.parse(new TextDecoder(`utf-8`,{fatal:!0}).decode(e)))}catch(e){try{await r.cancel()}catch{}throw Error(`activity_file_read_failed`,{cause:e})}finally{r.releaseLock()}}function tr(e,t,n){let r=new TextEncoder().encode(JSON.stringify(t.parse(e)));if(r.byteLength>n)throw Error(`activity_file_too_large`,{cause:{byteLength:r.byteLength}});return r}const R=[`👍`,`😂`,`🤡`,`💀`,`😭`,`🔥`,`🎉`,`👀`,`🙏`,`🫠`],nr=e.enum(R),z=e.string().min(1).max(128),B=524288,rr=`https://data.radarultra.com/activity/v1/latest.json`,ir=`https://data.radarultra.com/activity/v2/latest.json`,ar=N.extend({eventId:z}),or=P.safeExtend({days:e.array(P.shape.days.element.extend({entries:e.array(ar)})).length(28),undatedEntries:e.array(ar)});function sr(e,t){Qn([...e.days.flatMap(e=>e.entries),...e.undatedEntries],t)}const cr=or.superRefine(sr),lr=e.record(nr,e.number().int().nonnegative()),ur=e.strictObject({reactionCounts:lr,reactionTotal:e.number().int().nonnegative()});function dr(e,t){$n(e,t,R)}const fr=ar.extend(ur.shape).superRefine(dr),pr=or.safeExtend({days:e.array(or.shape.days.element.extend({entries:e.array(fr)})).length(28),undatedEntries:e.array(fr)}).superRefine(sr),V=e.strictObject({publishedAt:e.iso.datetime(),reactionIds:e.array(nr).length(R.length).refine(e=>new Set(e).size===R.length,`Every reaction must occur exactly once`),progress:pr}),mr=Un.shape,hr=mr.unassignedEntries.element.safeExtend({eventId:z}),gr=e.strictObject({...mr,days:e.array(mr.days.element.safeExtend({entries:e.array(hr)})).length(28),unassignedEntries:e.array(hr)}),_r=gr.superRefine((e,t)=>{let n=({eventId:e,...t})=>t,r=Un.safeParse({...e,days:e.days.map(e=>({...e,entries:e.entries.map(n)})),unassignedEntries:e.unassignedEntries.map(n)});if(!r.success)for(let e of r.error.issues)t.addIssue({...e});Qn([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),vr=hr.safeExtend(ur.shape).superRefine(dr),yr=gr.safeExtend({days:e.array(mr.days.element.safeExtend({entries:e.array(vr)})).length(28),unassignedEntries:e.array(vr)}).superRefine((e,t)=>{let n=({reactionCounts:e,reactionTotal:t,...n})=>n,r=_r.safeParse({...e,days:e.days.map(e=>({...e,entries:e.entries.map(n)})),unassignedEntries:e.unassignedEntries.map(n)});if(!r.success)for(let e of r.error.issues)t.addIssue({...e})}),br=V.extend({progress:yr}),xr=Xn.shape,Sr=xr.unassignedEntries.element.safeExtend({eventId:z}),Cr=Xn.safeExtend({days:e.array(xr.days.element.safeExtend({entries:e.array(Sr)})).length(28),unassignedEntries:e.array(Sr)}).superRefine((e,t)=>{Qn([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),wr=Sr.safeExtend(ur.shape).superRefine(dr),Tr=Cr.safeExtend({days:e.array(xr.days.element.safeExtend({entries:e.array(wr)})).length(28),unassignedEntries:e.array(wr)}),Er=V.extend({progress:Tr});async function Dr(e){return er(e,V,B)}async function Or(e){return er(e,br,B)}async function kr(e){return er(e,Er,B)}function Ar(e){return tr(e,V,B)}function jr(e){return tr(e,br,B)}function Mr(e){return tr(e,Er,B)}const Nr=e.strictObject({changeId:e.string().min(1).max(128),eventId:e.string().min(1).max(128),revision:e.int().positive(),kind:e.enum([`created`,`updated`,`withdrawn`]),date:e.iso.date().nullable(),entry:N,receivedAt:e.iso.datetime().nullable(),acceptedAt:e.iso.datetime()}),Pr=e.strictObject({contractVersion:e.literal(1),changes:e.array(Nr),nextCursor:e.string().min(1),hasMore:e.boolean()}),Fr=Nr.extend({dayNumber:P.shape.days.element.shape.dayNumber.nullable()}),Ir=Pr.extend({contractVersion:e.literal(2),changes:e.array(Fr)}),Lr=e.int().min(0).max(2**53-1),Rr=e.int().min(1).max(28),zr=e.enum([`yes`,`no`]).nullable(),Br=e.strictObject({choice:zr}),Vr=e.strictObject({yes:Lr,no:Lr,total:Lr}).superRefine((e,t)=>{(!Number.isSafeInteger(e.yes+e.no)||e.total!==e.yes+e.no)&&t.addIssue({code:`custom`,path:[`total`],message:`Total must equal the effective choices.`})}),Hr=e.strictObject({dayNumber:Rr,state:e.enum([`unopened`,`open`,`closed`]),choice:zr,outcome:e.enum([`unconfirmed`,`yes`,`no`]),personalResult:e.enum([`none`,`waiting`,`correct`,`incorrect`]),corrected:e.boolean(),counts:Vr}).superRefine((e,t)=>{let n=e.choice===null?`none`:e.outcome===`unconfirmed`?`waiting`:e.choice===e.outcome?`correct`:`incorrect`;e.personalResult!==n&&t.addIssue({code:`custom`,path:[`personalResult`],message:`Personal result must match the confirmed outcome and choice.`}),e.state!==`closed`&&e.outcome!==`unconfirmed`&&t.addIssue({code:`custom`,path:[`outcome`],message:`An open or unopened day cannot have a confirmed result.`}),e.state===`unopened`&&(e.choice!==null||e.counts.total!==0)&&t.addIssue({code:`custom`,path:[`state`],message:`An unopened day cannot have choices.`})}),Ur=e.strictObject({revision:Lr,openDayNumber:Rr.nullable(),days:e.array(Hr).length(28)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries()){r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Every official day must occur once, in order.`});let i=e.openDayNumber===null||r.dayNumber<e.openDayNumber?`closed`:r.dayNumber===e.openDayNumber?`open`:`unopened`;r.state!==i&&t.addIssue({code:`custom`,path:[`days`,n,`state`],message:`Only the next official day may be open.`})}}),Wr=e.strictObject({error:e.strictObject({code:e.enum([`invalid_request`,`payload_too_large`,`unsupported_media_type`,`origin_not_allowed`,`rate_limited`,`dependency_unavailable`,`internal_error`,`day_closed`,`identity_unavailable`]),message:e.string().min(1).max(2048),requestId:e.string().min(1).max(128),operation:e.enum([`get_guesses`,`set_guess`]),stage:e.string().min(1).max(128),cause:e.record(e.string(),e.unknown()),saveOutcome:e.enum([`not_saved`,`unknown`]).optional()})}).superRefine(({error:e},t)=>{e.operation===`set_guess`!=(e.saveOutcome!==void 0)&&t.addIssue({code:`custom`,path:[`error`,`saveOutcome`],message:`Only save failures must include a save outcome.`})}),Gr=e.strictObject({"zh-Hans":x.shape.noticeTimeline.element.shape.sourceTextZh,"zh-Hant":x.shape.noticeTimeline.element.shape.sourceTextZh,ja:x.shape.noticeTimeline.element.shape.sourceTextZh,ko:x.shape.noticeTimeline.element.shape.sourceTextZh}),Kr=x.shape.noticeTimeline.element.omit({sourceTextZh:!0}).extend({sourceTranslations:Gr}).strict(),qr=e.strictObject({...x.shape,contractVersion:e.literal(2),noticeTimeline:e.array(Kr).min(1).max(i.actionDetail.noticeTimeline)}),Jr=Kr.omit({phase:!0}).extend({kinds:S.shape.noticeTimeline.element.shape.kinds}).strict(),Yr=e.strictObject({...S.shape,noticeTimeline:e.array(Jr).min(1).max(i.actionDetail.noticeTimeline)}),Xr=e=>{let{sourceTranslations:t,...n}=e;return{...n,sourceTextZh:t[`zh-Hans`]}},Zr=e=>({...e,contractVersion:1,noticeTimeline:e.noticeTimeline.map(Xr)}),Qr=e=>({...e,noticeTimeline:e.noticeTimeline.map(Xr)}),$r=(e,t)=>{for(let n of e.error?.issues??[])t.addIssue({...n})},H=qr.superRefine((e,t)=>{$r(x.safeParse(Zr(e)),t)}),ei=Yr.superRefine((e,t)=>{$r(S.safeParse(Qr(e)),t)}),ti=e.strictObject({...C.shape,contractVersion:e.literal(2),actions:e.array(H).min(1).max(i.analysis.actions),pendingResetActions:e.array(ei).max(i.analysis.actions)}).superRefine((e,t)=>{$r(C.safeParse({...e,contractVersion:1,actions:e.actions.map(Zr),pendingResetActions:e.pendingResetActions.map(Qr)}),t),new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]})}),ni=e=>H.parse(e),ri=e=>ei.parse(e),ii=e=>ti.parse(e);function ai(e){let t=ii(e);return C.parse({...t,contractVersion:1,actions:t.actions.map(Zr),pendingResetActions:t.pendingResetActions.map(Qr)})}const oi=e.object(H.shape).omit({actionScope:!0,reasons:!0}).extend({contractVersion:e.literal(3)}).strict().superRefine((e,n)=>t(e,n,w)),si=ti.shape.generatedAt,ci=e.strictObject({resetActionId:x.shape.resetActionId,effect:x.shape.resetEffects.options[0].shape.values.element.nullable(),at:si,basis:e.enum([`execution_confirmation`,`announcement`]),sourceUrl:x.shape.noticeTimeline.element.shape.sourceUrl}),li=e.number().int().nonnegative(),ui=e.number().finite().nonnegative();function U(e,t){try{return w(e,t)}catch{return}}function di(e,t){return e<t?-1:+(e>t)}const fi=e.strictObject({timeBasis:e.literal(`confirmation_priority`),startAt:si,total:li,hardResetCount:li,bankedResetCount:li,unknownCount:li,records:e.array(ci).max(i.analysis.actions*2),intervalSummary:e.strictObject({mean:ui,max:ui}).nullable()}).superRefine((e,t)=>{let n=(e,n=[])=>t.addIssue({code:`custom`,message:e,path:n}),r={hard_reset:0,banked_reset:0,unknown:0},a=new Set,o=new Map,s=new Set,c=new Set;for(let[t,i]of e.records.entries()){r[i.effect??`unknown`]+=1;let l=JSON.stringify([i.resetActionId,i.effect]);a.has(l)&&n(`statistics_record_identity_duplicate`,[`records`,t]),a.add(l),i.effect===null?s.add(i.resetActionId):c.add(i.resetActionId),U(i.at,e.startAt)===-1&&n(`statistics_record_before_window`,[`records`,t,`at`]);let u=e.records.at(t-1);if(t>0&&u!==void 0){let e=U(u.at,i.at);e!==void 0&&(e>0||e===0&&(di(u.resetActionId,i.resetActionId)>0||u.resetActionId===i.resetActionId&&di(u.effect??``,i.effect??``)>0))&&n(`statistics_records_not_stably_sorted`,[`records`,t])}let d=o.get(i.resetActionId);(d===void 0||U(i.at,d)===-1)&&o.set(i.resetActionId,i.at)}o.size>i.analysis.actions&&n(`statistics_event_limit_exceeded`),[...s].some(e=>c.has(e))&&n(`statistics_event_effect_state_mismatch`),e.total!==e.records.length&&n(`statistics_total_mismatch`,[`total`]),e.hardResetCount!==r.hard_reset&&n(`statistics_hard_reset_count_mismatch`,[`hardResetCount`]),e.bankedResetCount!==r.banked_reset&&n(`statistics_banked_reset_count_mismatch`,[`bankedResetCount`]),e.unknownCount!==r.unknown&&n(`statistics_unknown_count_mismatch`,[`unknownCount`]);let l=[...o.values()].sort((e,t)=>U(e,t)??0),u=l.slice(1).map((e,t)=>Number(((Date.parse(e)-Date.parse(l.at(t)))/864e5).toFixed(6)));if(u.length===0)e.intervalSummary!==null&&n(`statistics_interval_summary_must_be_null`,[`intervalSummary`]);else if(u.every(Number.isFinite)){let t=Number((u.reduce((e,t)=>e+t,0)/u.length).toFixed(6)),r=Math.max(...u);(e.intervalSummary===null||Math.abs(e.intervalSummary.mean-t)>1e-9||Math.abs(e.intervalSummary.max-r)>1e-9)&&n(`statistics_interval_summary_mismatch`,[`intervalSummary`])}}),pi=e.object(ti.shape).omit({analysis:!0}).extend({contractVersion:e.literal(3),statistics:fi,actions:e.array(oi).min(1).max(i.analysis.actions)}).strict().superRefine((e,t)=>{let n=(e,n=[])=>t.addIssue({code:`custom`,message:e,path:n});new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&n(`export_utf8_size_limit_exceeded`);let r=new Map(e.actions.map(e=>[e.resetActionId,e])),a=new Set(e.statistics.records.map(e=>e.resetActionId));r.size!==e.actions.length&&n(`export_action_identity_duplicate`,[`actions`]),new Set(e.pendingResetActions.map(e=>e.resetActionId)).size!==e.pendingResetActions.length&&n(`export_pending_action_identity_duplicate`,[`pendingResetActions`]);for(let[t,r]of e.actions.entries()){let i=e.actions.at(t-1);t>0&&i!==void 0&&si.safeParse(i.firstAnnouncedAt).success&&si.safeParse(r.firstAnnouncedAt).success&&He(i,r)>0&&n(`export_actions_not_stably_sorted`,[`actions`,t]),U(r.firstAnnouncedAt,e.generatedAt)===1&&n(`export_action_after_snapshot`,[`actions`,t,`firstAnnouncedAt`]);let o=U(r.firstAnnouncedAt,e.statistics.startAt);o!==void 0&&o>=0&&!a.has(r.resetActionId)&&n(`export_statistics_window_action_missing`,[`actions`,t,`resetActionId`])}for(let[t,i]of e.statistics.records.entries()){let a=[`statistics`,`records`,t],o=r.get(i.resetActionId);if(o===void 0){n(`export_statistics_action_missing`,a);continue}(o.resetEffects.state===`unknown`!=(i.effect===null)||i.effect!==null&&!o.resetEffects.values.some(e=>e===i.effect))&&n(`export_statistics_effect_mismatch`,[...a,`effect`]);let s=o.noticeTimeline.filter(e=>e.sourceUrl===i.sourceUrl&&U(e.authoredAt,i.at)===0);s.length===0&&n(`export_statistics_source_mismatch`,a),i.basis===`execution_confirmation`&&!s.some(e=>e.phase===`executed`)&&n(`export_statistics_confirmation_source_invalid`,a),i.basis===`announcement`&&U(i.at,o.firstAnnouncedAt)!==0&&n(`export_statistics_announcement_time_mismatch`,a),U(i.at,e.generatedAt)===1&&n(`export_statistics_record_after_snapshot`,[...a,`at`])}}),mi=e.strictObject({contractVersion:e.literal(1),data:e.strictObject({sourceWatermark:ie.shape.sourceWatermark,statistics:fi}),meta:e.strictObject({observedAt:si})}),hi=e=>pi.parse(e);function gi(e,t){let n=ti.parse(e);return hi({contractVersion:3,generatedAt:n.generatedAt,statistics:t,pendingResetActions:n.pendingResetActions,actions:n.actions.map(({actionScope:e,reasons:t,...n})=>({...n,contractVersion:3}))})}const _i=e=>oi.parse(e),vi=`/api/v1/codex-reset-public-records`,yi=e.array(Jr).min(1).max(i.actionDetail.noticeTimeline),bi=e.strictObject(H.shape).omit({contractVersion:!0,noticeCount:!0,noticeTimeline:!0}).extend({noticeTimeline:yi}).strict();function xi(e){let t=e.noticeTimeline.filter(e=>e.kinds.includes(`executed`)||e.kinds.includes(`preview`)).map(({kinds:e,...t})=>({...t,phase:e.includes(`executed`)?`executed`:`preview`}));return{...e,contractVersion:2,noticeCount:t.length,noticeTimeline:t}}const Si=e=>H.parse(xi(e));function Ci(e,t){let n=new Set;for(let[r,i]of e.entries()){n.has(i.sourceUrl)&&t.addIssue({code:`custom`,message:`public_notice_source_duplicate`,path:[`noticeTimeline`,r]}),n.add(i.sourceUrl);let a=e.at(r-1),o=H.shape.firstAnnouncedAt;r>0&&a!==void 0&&o.safeParse(a.authoredAt).success&&o.safeParse(i.authoredAt).success&&w(a.authoredAt,i.authoredAt)>0&&t.addIssue({code:`custom`,message:`public_notice_timeline_not_ascending`,path:[`noticeTimeline`,r]})}}const wi=bi.superRefine((e,t)=>{Ci(e.noticeTimeline,t);let n=H.safeParse(xi(e));for(let e of n.error?.issues??[])t.addIssue({...e})}),Ti=e.strictObject(ei.shape).omit({state:!0,executedEffects:!0,pendingEffects:!0}).superRefine((e,t)=>{Ci(e.noticeTimeline,t)}),Ei=e.strictObject(H.shape).pick({resetActionId:!0}).extend({lastActiveFirstAnnouncedAt:H.shape.firstAnnouncedAt,withdrawnAt:H.shape.firstAnnouncedAt}).strict(),Di=i.analysis.actions,Oi=e.strictObject({contractVersion:e.literal(1),sourceWatermark:H.shape.resetActionId,generatedAt:H.shape.firstAnnouncedAt,actions:e.array(wi).min(1).max(Di),pendingResetActions:e.array(ei).max(Di),unexecutedResetActions:e.array(Ti).max(Di),withdrawnResetActions:e.array(Ei).max(Di)}).superRefine((e,t)=>{for(let n of[`actions`,`pendingResetActions`,`unexecutedResetActions`,`withdrawnResetActions`])new Set(e[n].map(e=>e.resetActionId)).size!==e[n].length&&t.addIssue({code:`custom`,message:`public_reset_identity_duplicate`,path:[n]});let n=new Set(e.actions.map(e=>e.resetActionId));for(let n of e.pendingResetActions)Ci(n.noticeTimeline,t);(e.unexecutedResetActions.some(e=>n.has(e.resetActionId))||e.withdrawnResetActions.some(e=>n.has(e.resetActionId)))&&t.addIssue({code:`custom`,message:`public_reset_lifecycle_conflict`});for(let[n,r]of e.actions.entries()){let i=e.actions.at(n-1),a=H.shape.firstAnnouncedAt;n>0&&i!==void 0&&a.safeParse(i.firstAnnouncedAt).success&&a.safeParse(r.firstAnnouncedAt).success&&He(i,r)>=0&&t.addIssue({code:`custom`,message:`public_reset_actions_not_ascending`,path:[`actions`,n]})}new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`public_reset_records_utf8_size_limit_exceeded`})}),ki=H.shape,Ai=e.strictObject({title:e.string(),body:e.string()}),ji=e.strictObject({zh:Ai,en:Ai}),Mi=e.enum([`end_preview`,`restore_preview`,`set_auto_notification`,`notify`]),Ni=e.strictObject({resetActionId:ki.resetActionId,operation:Mi,expectedRevision:e.int().nonnegative(),copy:ji.nullable(),automaticNotification:e.boolean().nullable()}).superRefine((e,t)=>{e.operation===`notify`!=(e.copy!==null)&&t.addIssue({code:`custom`,path:[`copy`],message:`notification_copy_operation_mismatch`}),e.operation===`set_auto_notification`!=(e.automaticNotification!==null)&&t.addIssue({code:`custom`,path:[`automaticNotification`],message:`notification_policy_operation_mismatch`})}),Pi=Ni,Fi=Ni,Ii=e.strictObject({digest:e.string().regex(/^sha256:[a-f0-9]{64}$/),sourceWatermark:e.string().min(1),draft:Ni}),Li=e.strictObject({operationId:e.uuid(),preview:Ii}),Ri=e.strictObject({resetActionId:ki.resetActionId,revision:e.number().int().nonnegative(),state:e.enum([`preview`,`executed`,`cancelled`,`undetermined`]),firstAnnouncedAt:E.nullable(),officialConfirmed:e.boolean(),pendingPreview:e.boolean(),previewClosed:e.boolean(),automaticNotification:e.boolean(),sourceUrls:e.array(ki.noticeTimeline.element.shape.sourceUrl),availableOperations:e.array(Mi),notificationOperationId:e.uuid().nullable()}),zi=e.strictObject({actions:e.array(Ri)}),Bi=e.discriminatedUnion(`status`,[e.strictObject({status:e.literal(`unknown`),operationId:e.uuid()}),e.strictObject({status:e.literal(`saved`),operationId:e.uuid(),resetActionId:ki.resetActionId,operation:Mi,revision:e.number().int().positive(),notification:e.strictObject({state:e.enum([`disabled`,`pending`,`claimed`,`retry_wait`,`accepted`,`rejected`,`expired`]),resultCode:e.string().nullable(),diagnostic:e.record(e.string(),e.unknown()).nullable()})})]),Vi=x.shape.noticeTimeline.element.shape,Hi=e.enum([`initial`,`supplement`,`correction`]).nullable(),Ui=e.strictObject({authoredAt:Vi.authoredAt,role:Hi,sourceUrl:Vi.sourceUrl,sourceText:Vi.sourceText,sourceTextZh:Vi.sourceTextZh}),Wi=e.array(Ui).min(1).superRefine((e,t)=>{let n=new Set,r;for(let[i,a]of e.entries()){if(n.has(a.sourceUrl)&&t.addIssue({code:`custom`,path:[i,`sourceUrl`],message:`An original post may appear only once per improvement`}),n.add(a.sourceUrl),!Vi.authoredAt.safeParse(a.authoredAt).success){r=void 0;continue}if(r!==void 0){let e=w(r.authoredAt,a.authoredAt);(e>0||e===0&&r.sourceUrl>a.sourceUrl)&&t.addIssue({code:`custom`,path:[i],message:`Posts must be ordered by authoredAt and sourceUrl`})}r=a}}),Gi=Kn,Ki=N.omit({description:!0}).extend({category:e.literal(`improvement`),title:L,posts:Wi}),qi=N.extend({category:e.enum([`direct_reset`,`reset_card`]),title:L}),Ji=e.discriminatedUnion(`category`,[Ki,qi]),Yi=Xn.shape,Xi=Yi.unassignedEntries.element.shape.date;function Zi(e,t){e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}const Qi=e.discriminatedUnion(`category`,[Ki.extend({date:Xi}).superRefine(Zi),qi.extend({date:Xi}).superRefine(Zi)]),$i=e.strictObject({...Yi,contractVersion:e.literal(5),days:e.array(Yi.days.element.extend({entries:e.array(Qi)})).length(28),unassignedEntries:e.array(Qi)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries())r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`}),r.outcome!==An(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function ea(e){return $i.parse(e)}const ta=`https://data.radarultra.com/activity/v3/latest.json`,na=$i.shape,[ra,ia]=na.unassignedEntries.element.options,aa=ra.safeExtend({eventId:z}),oa=ia.safeExtend({eventId:z}),sa=e.discriminatedUnion(`category`,[aa,oa]),ca=$i.safeExtend({days:e.array(na.days.element.extend({entries:e.array(sa)})).length(28),unassignedEntries:e.array(sa)}).superRefine((e,t)=>{Qn([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),la={reactionCounts:lr,reactionTotal:e.number().int().nonnegative()},ua=(e,t)=>$n(e,t,R),da=e.discriminatedUnion(`category`,[aa.safeExtend(la).superRefine(ua),oa.safeExtend(la).superRefine(ua)]),fa=ca.safeExtend({days:e.array(na.days.element.extend({entries:e.array(da)})).length(28),unassignedEntries:e.array(da)}),pa=V.extend({progress:fa});async function ma(e){return er(e,pa,B)}function ha(e){return tr(e,pa,B)}const ga=e.discriminatedUnion(`category`,[Ki,N.extend({category:e.enum([`direct_reset`,`reset_card`])})]),_a=Fr.extend({entry:ga}),va=Ir.extend({contractVersion:e.literal(3),changes:e.array(_a)});function ya(e){return _a.parse(e)}function ba(e){return va.parse(e)}const xa=`https://radarultra.com`,Sa=[`zh-Hans`,`zh-Hant`,`en`,`ja`,`ko`],Ca={"zh-Hans":`/zh`,"zh-Hant":`/zh-hant`,en:``,ja:`/ja`,ko:`/ko`},wa={reset:`/codex`,improvement:`/codex/28-day-challenge`,changelog:`/codex/changelog`,models:`/codex/models`,community:`/codex/community`},Ta=e.discriminatedUnion(`product`,[e.strictObject({product:e.literal(`cli`),version:e.string().regex(/^\d+\.\d+\.\d+$/)}),e.strictObject({product:e.literal(`app`),version:e.string().regex(/^\d{2}\.\d{3,4}$/)})]),Ea=e.string().regex(/^(?!\.{1,2}$)[a-z0-9.-]+$/);function Da(e,t){return xa+Ca[t]+wa[e]}function Oa(e,t,n){let r=Ta.parse({product:e,version:t});return`${Da(`changelog`,n)}/${r.product}/${r.version}`}function ka(e,t){return`${Da(`models`,t)}/${Ea.parse(e)}`}const Aa=Object.freeze({timeZone:`America/Los_Angeles`,startDate:`2026-10-05`,endDate:`2026-11-01`}),ja=Date.parse(`${Aa.startDate}T00:00:00Z`),Ma=(Date.parse(`${Aa.endDate}T00:00:00Z`)-ja)/864e5+1,Na=new Intl.DateTimeFormat(`en-CA`,{timeZone:Aa.timeZone,year:`numeric`,month:`2-digit`,day:`2-digit`});function Pa(e){let t=Na.formatToParts(e),n=e=>Number(t.find(t=>t.type===e).value),r=(Date.UTC(n(`year`),n(`month`)-1,n(`day`))-ja)/864e5,i=r<0?`before`:r>=Ma?`ended`:`live`,a=Math.min(Ma,Math.max(1,r+1));return{phase:i,today:a,ongoingDay:i===`live`?a:null}}const Fa=e.enum([`reset`,`improvement`]),Ia=e.array(Fa).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),La=t=>e.url().refine(e=>Sa.some(n=>e===Da(t,n)),`notification_target_url_invalid`),Ra=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`reset`),webUrl:La(`reset`),miniPath:e.literal(`pages/index/index`)}).strict(),e.object({kind:e.literal(`improvement`),webUrl:La(`improvement`),miniPath:e.literal(`pages/index/index?page=challenge`)}).strict()]),za=e.object({topics:Ia,target:Ra}).strict().refine(e=>e.topics.includes(e.target.kind),`notification_target_topic_mismatch`),Ba=e.enum([`reset`,`improvement`,`clue`]),Va=e.object({topics:e.array(Ba).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),target:Ra}).strict().refine(e=>e.topics.some(t=>(t===`clue`?`reset`:t)===e.target.kind),`notification_target_topic_mismatch`);function Ha(e,t){let n=Ua(e===`clue`?`reset`:e,t);return Va.parse({...n,topics:[e]})}function Ua(e,t){return za.parse({topics:[e],target:{kind:e,webUrl:Da(e,t),miniPath:e===`reset`?`pages/index/index`:`pages/index/index?page=challenge`}})}const Wa=e.object({notificationId:e.uuid(),eventId:e.uuid(),title:e.string().trim().min(1).max(512),createdAt:e.iso.datetime(),deliverBy:e.iso.datetime(),...za.shape}).strict().superRefine((e,t)=>{e.topics.includes(e.target.kind)||t.addIssue({code:`custom`,message:`notification_target_topic_mismatch`}),w(e.deliverBy,e.createdAt)<=0&&t.addIssue({code:`custom`,message:`notification_task_deadline_invalid`})});function Ga(e,t){return w(e.createdAt,t.createdAt)||(e.notificationId<t.notificationId?-1:+(e.notificationId>t.notificationId))}const Ka=`/api/v1/notification-tasks`,qa=100,Ja=e.string().min(1).max(8192),Ya=e.object({cursor:Ja.optional()}).strict(),Xa=e.object({contractVersion:e.literal(1),roundCursor:Ja,notifications:e.array(Wa).max(100),nextCursor:Ja.nullable()}).strict().superRefine((e,t)=>{new Set(e.notifications.map(e=>e.notificationId)).size!==e.notifications.length&&t.addIssue({code:`custom`,message:`notification_task_duplicate`});for(let n=1;n<e.notifications.length;n++)Ga(e.notifications.at(n-1),e.notifications.at(n))>=0&&t.addIssue({code:`custom`,message:`notification_task_order_invalid`});e.nextCursor!==null&&e.notifications.length===0&&t.addIssue({code:`custom`,message:`notification_task_empty_continuation`})}),Za=`/api/browser-notifications`,Qa=e.string().min(1).max(128),$a=e.uuid(),eo=e.enum(Sa),to=e.strictObject({reset:e.boolean(),improvement:e.boolean()}),no=`[cdef][\\w-]{21}`,ro=e.strictObject({fid:e.string().regex(RegExp(`^${no}$`))});function io(e){return e.replace(RegExp(`(^|[^\\w-])${no}(?![\\w-])`,`g`),`$1[registration]`)}const W={operationId:$a,expectedRevision:Qa},ao=e.discriminatedUnion(`action`,[e.strictObject({...W,action:e.literal(`register`),topics:to.refine(e=>e.reset||e.improvement,`subscription_topic_required`),locale:eo,registration:ro}),e.strictObject({...W,action:e.literal(`set_topics`),topics:to}),e.strictObject({...W,action:e.literal(`set_locale`),locale:eo}),e.strictObject({...W,action:e.literal(`restore`),registration:ro}),e.strictObject({...W,action:e.literal(`retry`)}),e.strictObject({...W,action:e.literal(`cancel`)})]),oo=e.strictObject({operationId:$a.optional(),expectedRevision:Qa.optional()}).refine(e=>e.operationId===void 0==(e.expectedRevision===void 0),`subscription_operation_reference_incomplete`),so=e.strictObject({code:e.enum([`invalid_request`,`identity_unavailable`,`origin_not_allowed`,`rate_limited`,`revision_conflict`,`operation_conflict`,`registration_conflict`,`dependency_unavailable`,`provider_rejected`,`provider_rate_limited`,`provider_unavailable`,`provider_timeout`,`internal_error`]),operationId:$a.optional(),correlationId:e.uuid(),stage:e.string().min(1).max(128),saveOutcome:e.enum([`not_saved`,`unknown`]),reasonSummary:e.string().min(1).max(2048),retryable:e.boolean(),cause:e.record(e.string(),e.unknown())}),co=e.strictObject({id:$a,state:e.enum([`pending`,`applied`,`rejected`,`unknown`,`superseded`,`not_found`]),error:so.optional()}),lo=e.strictObject({topicSettings:e.strictObject({state:e.enum([`initial`,`saved`]),revision:Qa,topics:to,locale:eo.nullable()}),registrationState:e.enum([`none`,`ready`,`invalid`,`changing`]),registrationKey:e.string().regex(/^[a-f0-9]{64}$/).nullable(),manualRetryRequired:e.boolean(),operation:co.nullable()});function uo(e,t){return{topics:t.action===`register`||t.action===`set_topics`?t.topics:e.topics,locale:t.action===`register`||t.action===`set_locale`?t.locale:e.locale}}const fo=e.strictObject({data:lo}),po=e.strictObject({error:so});function mo(e){return{topicSettings:{state:`initial`,revision:e,topics:{reset:!0,improvement:!1},locale:null},registrationState:`none`,registrationKey:null,manualRetryRequired:!1,operation:null}}const ho=to.extend({clue:e.boolean().default(!1)}),[go,_o,...vo]=ao.options,yo=e.discriminatedUnion(`action`,[go.extend({topics:ho.refine(e=>Object.values(e).some(Boolean),`subscription_topic_required`)}),_o.extend({topics:ho}),...vo]),bo=lo.extend({topicSettings:lo.shape.topicSettings.extend({topics:ho})}),xo=e.strictObject({data:bo});function So(e){return bo.parse(mo(e))}function Co(e){let{clue:t,...n}=e.topicSettings.topics;return lo.parse({...e,topicSettings:{...e.topicSettings,topics:n}})}function wo(e,t){return e.action!==`register`&&e.action!==`set_topics`?e:{...e,topics:{...e.topics,clue:e.action!==`register`&&(e.topics.reset||e.topics.improvement)&&t.clue}}}const To=20,Eo=2*1024*1024,Do=`/api/v1/improvements`,Oo=e.string().min(1).max(1024),[ko]=ca.shape.unassignedEntries.element.options,Ao=ko.safeExtend({date:e.iso.date().refine(e=>e>Aa.endDate,`improvement_must_follow_campaign`)}),jo=e.strictObject({}),Mo=e.strictObject({challengeEnded:e.boolean(),observedAt:e.iso.datetime()}),No=e.strictObject({cursor:Oo.nullable(),limit:e.literal(20)}),Po=Mo.extend({entries:e.array(Ao).max(20),nextCursor:Oo.nullable()}).superRefine((e,t)=>{new Set(e.entries.map(e=>e.eventId)).size!==e.entries.length&&t.addIssue({code:`custom`,path:[`entries`],message:`Duplicate improvement identity`})}),Fo=e.strictObject({eventIds:e.array(z).min(1).max(128)}),Io=e.strictObject({eventIds:e.array(z).max(128)}),Lo=e.strictObject({error:e.strictObject({code:e.enum([`invalid_request`,`dependency_unavailable`,`internal_error`]),message:e.string(),requestId:e.uuid(),operation:e.string(),stage:e.string(),cause:e.record(e.string(),e.unknown())})}),Ro=`/tibo-source/v1/latest.json`,zo=512*1024,Bo=e.iso.datetime({offset:!0}),Vo=x.shape.noticeTimeline.element,Ho=e.strictObject({contractVersion:e.literal(1),observedAt:Bo,check:e.strictObject({checkedAt:Bo,freshUntil:Bo,active:e.boolean()}).nullable(),latestPost:e.strictObject({authoredAt:Bo,sourceUrl:Vo.shape.sourceUrl,sourceText:e.string(),sourceTranslations:Gr,resetRelevance:e.enum([`related`,`unrelated`,`unknown`])}).nullable()});async function Uo(e){let t=e.body?.getReader();if(t===void 0)throw Error(`tibo_source_status_body_missing`,{cause:{status:e.status}});let n=[],r=0;try{for(;;){let i=await t.read();if(i.done)break;if(r+=i.value.byteLength,r>524288)throw Error(`tibo_source_status_too_large`,{cause:{status:e.status,bytes:r}});n.push(i.value)}}finally{try{await t.cancel()}catch{}t.releaseLock()}let i=new Uint8Array(r),a=0;for(let e of n)i.set(e,a),a+=e.byteLength;let o=new TextDecoder(`utf-8`,{fatal:!0}).decode(i);if(!e.ok)throw Error(`tibo_source_status_http_error`,{cause:{status:e.status,upstream:o.slice(0,4e3)}});return Ho.parse(JSON.parse(o))}const Wo=`/reset-clue/v1/latest.json`,Go=4320*60*1e3,Ko=i.exportUtf8Bytes,qo=H.shape.noticeTimeline.element.pick({authoredAt:!0,sourceUrl:!0,sourceText:!0,sourceTranslations:!0,contentCompleteness:!0}).extend({plannedTiming:Re.nullable(),expiresAt:H.shape.noticeTimeline.element.shape.authoredAt}).strict().superRefine((e,t)=>{Date.parse(e.expiresAt)!==Date.parse(e.authoredAt)+2592e5&&t.addIssue({code:`custom`,message:`reset_clue_expiry_mismatch`,path:[`expiresAt`]})}),Jo=e.strictObject({contractVersion:e.literal(1),clue:qo.nullable()}),Yo=e=>Jo.parse(e);function Xo(e,t){return e.clue!==null&&t.getTime()<Date.parse(e.clue.expiresAt)?e.clue:null}async function Zo(e){let t=e.body?.getReader();if(t===void 0)throw Error(`reset_clue_body_missing`,{cause:{status:e.status}});let n=[],r=0;try{for(;;){let i=await t.read();if(i.done)break;if(r+=i.value.byteLength,r>Ko)throw Error(`reset_clue_too_large`,{cause:{status:e.status,bytes:r}});n.push(i.value)}}finally{try{await t.cancel()}catch{}t.releaseLock()}let i=new Uint8Array(r),a=0;for(let e of n)i.set(e,a),a+=e.byteLength;let o=new TextDecoder(`utf-8`,{fatal:!0}).decode(i);if(!e.ok)throw Error(`reset_clue_http_error`,{cause:{status:e.status,upstream:o.slice(0,4e3)}});return Yo(JSON.parse(o))}const G=e.enum(Sa),K=e.string().regex(/^\d{4}-(?:0[1-9]|1[0-2])$/),q=e.string().trim().min(1),Qo=e.url({protocol:/^https$/}),J=e.discriminatedUnion(`kind`,[e.strictObject({kind:e.literal(`instant`),at:e.iso.datetime()}),e.strictObject({kind:e.literal(`date`),date:e.iso.date()})]),$o=e.strictObject({operation:q,stage:q,cause:Kt});function es(t){return e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`ready`),value:t}),e.strictObject({state:e.literal(`pending`)}),e.strictObject({state:e.literal(`failed`),failure:$o})])}function Y(e,t){return e.superRefine((e,n)=>{new TextEncoder().encode(JSON.stringify(e)).byteLength>t&&n.addIssue({code:`custom`,message:`publication_utf8_size_limit_exceeded`})})}async function X(e,t,n,r){let i=e.body?.getReader();if(i===void 0)throw Error(`${t}_body_missing`,{cause:{operation:t,stage:`read`,status:e.status}});let a=[],o=0;try{for(;;){let e=await i.read();if(e.done)break;if(o+=e.value.byteLength,o>n)throw Error(`publication_utf8_size_limit_exceeded`);a.push(e.value)}}catch(n){throw Error(`${t}_read_failed`,{cause:{operation:t,stage:`read`,status:e.status,bytes:o,cause:n}})}finally{try{await i.cancel()}catch{}i.releaseLock()}let s=new Uint8Array(o),c=0;for(let e of a)s.set(e,c),c+=e.byteLength;let l;try{l=new TextDecoder(`utf-8`,{fatal:!0}).decode(s)}catch(n){throw Error(`${t}_decode_failed`,{cause:{operation:t,stage:`decode`,status:e.status,cause:n}})}if(!e.ok)throw Error(`${t}_http_error`,{cause:{operation:t,stage:`http`,status:e.status,upstream:l.slice(0,4e3)}});try{return r.parse(JSON.parse(l))}catch(n){throw Error(`${t}_parse_failed`,{cause:{operation:t,stage:`parse`,status:e.status,cause:n}})}}const ts=`/codex-releases/v2/directory.json`,ns=128*1024,rs=128*1024,is=256*1024,as=J,os={product:e.enum([`app`,`cli`]),version:q,published:J,month:K,revision:q},ss=e.strictObject(os).superRefine(cs);function cs(e,t){let n=Ta.safeParse({product:e.product,version:e.version});if(!n.success)for(let e of n.error.issues)t.addIssue({...e});e.product===`cli`!=(e.published.kind===`instant`)&&t.addIssue({code:`custom`,path:[`published`],message:`product_date_precision_mismatch`}),(e.published.kind===`instant`?e.published.at:e.published.date).slice(0,7)!==e.month&&t.addIssue({code:`custom`,path:[`month`],message:`published_month_mismatch`})}function ls(e,t){let n=new Set,r=1/0;for(let[i,a]of e.entries()){let e=`${a.product}/${a.version}`;n.has(e)&&t.addIssue({code:`custom`,path:[`releases`,i],message:`duplicate_release_identity`}),n.add(e);let o=Date.parse(a.published.kind===`instant`?a.published.at:`${a.published.date}T00:00:00Z`);o>r&&t.addIssue({code:`custom`,path:[`releases`,i],message:`release_order_mismatch`}),r=o}}const us=Y(e.strictObject({contractVersion:e.literal(2),releases:e.array(ss),latest:e.strictObject({app:e.string().nullable(),cli:e.string().nullable()})}).superRefine((e,t)=>{ls(e.releases,t);for(let n of[`app`,`cli`]){let r=e.releases.find(e=>e.product===n)?.version??null;e.latest[n]!==r&&t.addIssue({code:`custom`,path:[`latest`,n],message:`latest_release_mismatch`})}}),ns),ds=e.strictObject({state:e.literal(`not_applicable`),reason:e.literal(`no_curated_notes`)}),fs=e.union([es(e.strictObject({locale:G,points:e.array(q).min(1).max(5)})),ds]),ps=e.strictObject({...os,source:e.strictObject({kind:e.enum([`github`,`official`]),url:Qo}),summary:fs,notesCount:e.number().int().nonnegative()}).superRefine((e,t)=>{cs(e,t),e.product===`cli`!=(e.source.kind===`github`)&&t.addIssue({code:`custom`,path:[`source`,`kind`],message:`product_source_mismatch`}),e.notesCount===0!=(e.summary.state===`not_applicable`)&&t.addIssue({code:`custom`,path:[`summary`],message:`curated_notes_summary_state_mismatch`})}),ms=Y(e.strictObject({contractVersion:e.literal(2),locale:G,month:K,releases:e.array(ps)}).superRefine((e,t)=>{ls(e.releases,t);for(let[n,r]of e.releases.entries())r.month!==e.month&&t.addIssue({code:`custom`,path:[`releases`,n,`month`],message:`file_month_mismatch`}),r.summary.state===`ready`&&r.summary.value.locale!==e.locale&&r.summary.value.locale!==`en`&&t.addIssue({code:`custom`,path:[`releases`,n,`summary`,`value`,`locale`],message:`summary_locale_mismatch`})}),rs),hs=e.array(e.strictObject({title:q.nullable(),items:e.array(e.strictObject({text:q,refs:q.nullable()})).min(1)})).min(1),gs=Y(e.strictObject({contractVersion:e.literal(2),product:e.enum([`app`,`cli`]),version:q,revision:q,locale:G,original:e.array(hs.element),translation:e.union([es(hs),ds]).nullable()}).superRefine((e,t)=>{let n=Ta.safeParse({product:e.product,version:e.version});if(!n.success)for(let e of n.error.issues)t.addIssue({...e});if(e.locale===`en`!=(e.translation===null)&&t.addIssue({code:`custom`,path:[`translation`],message:`translation_locale_mismatch`}),e.locale!==`en`&&e.original.length===0!=(e.translation?.state===`not_applicable`)&&t.addIssue({code:`custom`,path:[`translation`],message:`curated_notes_translation_state_mismatch`}),e.translation?.state===`ready`){let n=e.translation.value;(n.length!==e.original.length||e.original.some((e,t)=>{let r=n.at(t);return r===void 0||e.title===null!=(r.title===null)||e.items.length!==r.items.length||e.items.some((e,t)=>e.refs!==r.items.at(t)?.refs)}))&&t.addIssue({code:`custom`,path:[`translation`],message:`translation_structure_mismatch`})}}),is),_s=e=>us.parse(e),vs=e=>ms.parse(e),ys=e=>gs.parse(e),bs=e=>X(e,`codex_release_directory`,ns,us),xs=e=>X(e,`codex_release_month`,rs,ms),Ss=e=>X(e,`codex_release_notes`,is,gs);function Cs(e,t){return`/codex-releases/v2/${G.parse(e)}/${K.parse(t)}.json`}function ws(e,t,n){let r=Ta.parse({product:t,version:n});return`/codex-releases/v2/${G.parse(e)}/notes/${r.product}/${r.version}.json`}const Ts=128*1024;function Z(t){return e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`known`),value:t,source:Qo}),e.strictObject({state:e.literal(`unavailable`),reason:e.enum([`not_announced`,`not_listed`]),source:Qo.nullable()})])}const Es=e.strictObject({input:q,cached:q,output:q}),Ds=e.strictObject({modelId:Ea,name:q,group:e.enum([`current`,`retired`]),status:e.enum([`available`,`retiring`,`retired`]),launched:Z(J),chatgptRetirement:Z(J),apiRetirement:Z(J),credits:Z(Es),apiPrice:Z(Es),multiple:e.string().regex(/^(?:0|[1-9]\d*)(?:\.\d+)?$/).refine(e=>Number.isFinite(Number(e))&&Number(e)>0).nullable(),plans:Z(e.array(q).min(1)),surfaces:Z(e.array(q).min(1)),about:es(e.strictObject({locale:G,paragraphs:e.array(q).min(1)})),sources:e.array(e.strictObject({label:q,url:Qo})).min(1)}).superRefine((e,t)=>{e.status===`retired`!=(e.group===`retired`)&&t.addIssue({code:`custom`,path:[`group`],message:`model_group_status_mismatch`}),e.status===`retiring`&&e.chatgptRetirement.state!==`known`&&t.addIssue({code:`custom`,path:[`chatgptRetirement`],message:`retiring_model_requires_announced_date`})}),Os=Y(e.strictObject({contractVersion:e.literal(1),locale:G,models:e.array(Ds),multipleBase:e.strictObject({modelId:Ea,name:q}).nullable(),upcomingRetirement:e.strictObject({names:q,modelIds:e.array(Ea).min(1),surface:e.enum([`api`,`chatgpt`]),at:J}).nullable()}).superRefine((e,t)=>{let n=new Set;for(let[r,i]of e.models.entries())n.has(i.modelId)&&t.addIssue({code:`custom`,path:[`models`,r,`modelId`],message:`duplicate_model_identity`}),n.add(i.modelId),i.about.state===`ready`&&i.about.value.locale!==e.locale&&i.about.value.locale!==`en`&&t.addIssue({code:`custom`,path:[`models`,r,`about`,`value`,`locale`],message:`model_description_locale_mismatch`}),i.multiple!==null&&(e.multipleBase===null||i.credits.state!==`known`)&&t.addIssue({code:`custom`,path:[`models`,r,`multiple`],message:`multiple_requires_base_and_credits`});if(e.multipleBase!==null){let n=e.models.find(t=>t.modelId===e.multipleBase?.modelId);(n===void 0||n.group!==`current`||n.credits.state!==`known`||n.multiple!==`1`||n.name!==e.multipleBase.name)&&t.addIssue({code:`custom`,path:[`multipleBase`],message:`multiple_base_mismatch`})}let r=e.upcomingRetirement;if(r!==null){new Set(r.modelIds).size!==r.modelIds.length&&t.addIssue({code:`custom`,path:[`upcomingRetirement`,`modelIds`],message:`duplicate_retirement_model`});for(let n of r.modelIds){let i=e.models.find(e=>e.modelId===n),a=r.surface===`api`?i?.apiRetirement:i?.chatgptRetirement;(a?.state!==`known`||JSON.stringify(a.value)!==JSON.stringify(r.at))&&t.addIssue({code:`custom`,path:[`upcomingRetirement`],message:`retirement_model_date_mismatch`})}}}),Ts),ks=e=>Os.parse(e),As=e=>X(e,`codex_models`,Ts,Os),js=e=>`/codex-models/v1/${G.parse(e)}.json`,Ms=256*1024,Ns=512*1024,Ps=3600*1e3,Q=e.string().regex(/^[a-z][a-z0-9-]{0,63}$/),Fs=e.enum([`x`,`hn`,`github`,`v2ex`,`reddit`,`linuxdo`]),Is=e.enum([`debate`,`tip`,`showcase`,`comparison`,`news`]),$=e.string().trim().min(1),Ls=e.strictObject({id:$,topic:Q,platform:Fs,kind:Is,url:Qo,author:e.strictObject({name:$,handle:$.nullable()}),venue:$.nullable(),title:$.nullable(),summary:e.strictObject({zh:$.max(600),en:$.max(600)}),authoredAt:e.iso.datetime(),heat:e.strictObject({metrics:e.array(e.strictObject({kind:e.enum([`likes`,`points`,`comments`,`reactions`,`replies`]),value:e.number().int().nonnegative()})).min(1),ratio:e.number().finite().nonnegative()}).nullable()}).superRefine((e,t)=>{(!e.id.startsWith(`${e.platform}:`)||e.id.length<=e.platform.length+1)&&t.addIssue({code:`custom`,path:[`id`],message:`entry_platform_identity_mismatch`})});function Rs(e,t){let n=new Set,r=1/0;for(let[i,a]of e.entries.entries()){n.has(a.id)&&t.addIssue({code:`custom`,path:[`entries`,i],message:`duplicate_entry`}),n.add(a.id),a.topic!==e.topic&&t.addIssue({code:`custom`,path:[`entries`,i],message:`entry_topic_mismatch`});let o=Date.parse(a.authoredAt);o>r&&t.addIssue({code:`custom`,path:[`entries`,i],message:`entry_order_mismatch`}),r=o}}const zs=e.strictObject({id:$,platform:Fs,label:$,lastSuccessAt:e.iso.datetime().nullable()}),Bs=Y(e.strictObject({contractVersion:e.literal(1),topic:Q,generatedAt:e.iso.datetime(),overview:e.strictObject({weekCount:e.number().int().nonnegative(),debateCount:e.number().int().nonnegative(),hottestId:$.nullable()}),sources:e.array(zs),coverage:e.strictObject({from:e.iso.date(),months:e.array(K)}),entries:e.array(Ls)}).superRefine((e,t)=>{Rs(e,t);let n=Date.parse(e.generatedAt),r=e.entries.filter(e=>Date.parse(e.authoredAt)>=n-7*864e5),i=[...r].sort(Js).at(0)?.id??null;(e.overview.weekCount!==r.length||e.overview.debateCount!==r.filter(e=>e.kind===`debate`).length||e.overview.hottestId!==i)&&t.addIssue({code:`custom`,path:[`overview`],message:`overview_entries_mismatch`}),new Set(e.sources.map(e=>e.id)).size!==e.sources.length&&t.addIssue({code:`custom`,path:[`sources`],message:`duplicate_source`}),(new Set(e.coverage.months).size!==e.coverage.months.length||e.coverage.months.some((t,n)=>n>0&&t>=e.coverage.months.at(n-1)))&&t.addIssue({code:`custom`,path:[`coverage`],message:`coverage_order_mismatch`});for(let r of e.entries){let i=Date.parse(r.authoredAt);(i>n||i<n-30*864e5||!e.coverage.months.includes(r.authoredAt.slice(0,7))||r.authoredAt.slice(0,10)<e.coverage.from)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_coverage_mismatch`})}}),Ms),Vs=Y(e.strictObject({contractVersion:e.literal(1),topic:Q,month:K,entries:e.array(Ls)}).superRefine((e,t)=>{Rs(e,t),e.entries.some(t=>t.authoredAt.slice(0,7)!==e.month)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_month_mismatch`})}),Ns),Hs=e=>`/community-trending/v1/${Q.parse(e)}/latest.json`,Us=(e,t)=>`/community-trending/v1/${Q.parse(e)}/${K.parse(t)}.json`,Ws=e=>Bs.parse(e),Gs=e=>Vs.parse(e),Ks=e=>X(e,`community_trending_latest`,Ms,Bs),qs=e=>X(e,`community_trending_month`,Ns,Vs);function Js(e,t){return e.heat===null&&t.heat!==null?1:e.heat!==null&&t.heat===null?-1:(t.heat?.ratio??0)-(e.heat?.ratio??0)||t.authoredAt.localeCompare(e.authoredAt)||e.id.localeCompare(t.id)}const Ys=(e,t)=>e.summary[t===`zh-Hans`?`zh`:`en`];export{on as RadarResetSourceContractErrorV2,Xo as activeRadarResetClue,Js as compareRadarCommunityTrendingEntries,Ga as compareRadarNotificationTasks,He as compareRadarResetActionDetailsV1,w as compareRadarResetUtcTimestampsV1,Ha as createRadarBrowserNotificationProjection,Pa as createRadarCodexProgressCalendar,Ua as createRadarNotificationProjection,Tn as createRadarResetSourceErrorEnvelopeV2,Ar as encodeRadarActivityFile,Mr as encodeRadarActivityFileV2,ha as encodeRadarActivityFileV3,mn as encodeRadarResetDetailMultipartV2,jr as encodeRadarTitledActivityFile,ct as formatRadarResetPositiveDecimalV2,st as formatRadarResetUInt64DecimalV2,mo as initialRadarBrowserSubscription,So as initialRadarBrowserSubscriptionV2,ks as parseRadarCodexModels,ya as parseRadarCodexProgressChangeV3,ba as parseRadarCodexProgressChangesV3,kn as parseRadarCodexProgressV1,In as parseRadarCodexProgressV2,Gn as parseRadarCodexProgressV3,Zn as parseRadarCodexProgressV4,ea as parseRadarCodexProgressV5,_s as parseRadarCodexReleaseDirectory,vs as parseRadarCodexReleaseMonth,ys as parseRadarCodexReleaseNotes,Ws as parseRadarCommunityTrendingLatest,Gs as parseRadarCommunityTrendingMonth,We as parseRadarResetActionDetailV1,ni as parseRadarResetActionDetailV2,_i as parseRadarResetActionDetailV3,xt as parseRadarResetActionSummaryV2,Ue as parseRadarResetAnalysisV1,Yo as parseRadarResetClueSnapshot,vn as parseRadarResetDetailMultipartV2,Ge as parseRadarResetExportV1,ii as parseRadarResetExportV2,hi as parseRadarResetExportV3,Ke as parseRadarResetPendingActionV1,ri as parseRadarResetPendingActionV2,at as parseRadarResetPositiveDecimalV2,Ct as parseRadarResetPublicationHomeFactsV2,an as parseRadarResetPublicationRevisionAvailableV2,Zt as parseRadarResetReadActionsRequestV2,tn as parseRadarResetReadActionsSuccessV2,Qt as parseRadarResetReadChangesRequestV2,nn as parseRadarResetReadChangesSuccessV2,$t as parseRadarResetReadDetailBatchRequestV2,Xt as parseRadarResetReadHeadRequestV2,en as parseRadarResetReadHeadSuccessV2,ae as parseRadarResetSnapshotAvailableV1,rn as parseRadarResetSourceErrorEnvelopeV2,it as parseRadarResetUInt64DecimalV2,uo as projectRadarBrowserSubscriptionSelection,Co as projectRadarBrowserSubscriptionV1,ai as projectRadarResetExportV1FromV2,gi as projectRadarResetExportV3FromV2,qe as projectRadarResetPrimarySourceV1,Si as projectRadarResetPublicActionToV2,z as radarActivityEventIdSchema,V as radarActivityFileSchema,rr as radarActivityFileUrl,Er as radarActivityFileV2Schema,ir as radarActivityFileV2Url,pa as radarActivityFileV3Schema,ta as radarActivityFileV3Url,B as radarActivityMaxBytes,cr as radarActivityProgressSchema,Cr as radarActivityProgressV2Schema,ca as radarActivityProgressV3Schema,lr as radarActivityReactionCountsSchema,nr as radarActivityReactionIdSchema,R as radarActivityReactionIds,Va as radarBrowserNotificationProjectionSchema,Ba as radarBrowserNotificationTopicSchema,ro as radarBrowserRegistrationSchema,po as radarBrowserSubscriptionErrorRes,so as radarBrowserSubscriptionFailureSchema,co as radarBrowserSubscriptionOperationSchema,oo as radarBrowserSubscriptionReadReq,fo as radarBrowserSubscriptionRes,ao as radarBrowserSubscriptionSaveReq,yo as radarBrowserSubscriptionSaveV2Req,xo as radarBrowserSubscriptionV2Res,lo as radarBrowserSubscriptionViewSchema,bo as radarBrowserSubscriptionViewV2Schema,Za as radarBrowserSubscriptionsPath,to as radarBrowserTopicsSchema,ho as radarBrowserTopicsV2Schema,zr as radarCodexGuessChoiceSchema,Wr as radarCodexGuessErrorSchema,Br as radarCodexGuessSaveReqSchema,Ur as radarCodexGuessViewSchema,Ea as radarCodexModelIdSchema,ka as radarCodexModelUrl,Ts as radarCodexModelsMaxBytes,js as radarCodexModelsPath,Os as radarCodexModelsSchema,Aa as radarCodexProgressCalendar,Nr as radarCodexProgressChangeSchema,Fr as radarCodexProgressChangeV2Schema,_a as radarCodexProgressChangeV3Schema,Pr as radarCodexProgressChangesV1Schema,Ir as radarCodexProgressChangesV2Schema,va as radarCodexProgressChangesV3Schema,N as radarCodexProgressEntrySchema,Rn as radarCodexProgressEntryV3Schema,Ji as radarCodexProgressEntryV5Schema,Ki as radarCodexProgressImprovementV5Schema,Hi as radarCodexProgressPostRoleV5Schema,Ui as radarCodexProgressPostV5Schema,Wi as radarCodexProgressPostsV5Schema,qi as radarCodexProgressResetEntryV5Schema,Wn as radarCodexProgressScore,L as radarCodexProgressTitleV3Schema,P as radarCodexProgressV1Schema,jn as radarCodexProgressV2MaxBytes,I as radarCodexProgressV2Schema,Ln as radarCodexProgressV3MaxBytes,Un as radarCodexProgressV3Schema,Kn as radarCodexProgressV4MaxBytes,Xn as radarCodexProgressV4Schema,Gi as radarCodexProgressV5MaxBytes,$i as radarCodexProgressV5Schema,ns as radarCodexReleaseDirectoryMaxBytes,ts as radarCodexReleaseDirectoryPath,us as radarCodexReleaseDirectorySchema,Ta as radarCodexReleaseIdentitySchema,rs as radarCodexReleaseMonthMaxBytes,Cs as radarCodexReleaseMonthPath,ms as radarCodexReleaseMonthSchema,is as radarCodexReleaseNotesMaxBytes,ws as radarCodexReleaseNotesPath,gs as radarCodexReleaseNotesSchema,hs as radarCodexReleaseSectionsSchema,Oa as radarCodexReleaseUrl,as as radarCodexTimePointSchema,Ls as radarCommunityTrendingEntrySchema,Is as radarCommunityTrendingKindSchema,Ms as radarCommunityTrendingLatestMaxBytes,Hs as radarCommunityTrendingLatestPath,Bs as radarCommunityTrendingLatestSchema,Ns as radarCommunityTrendingMonthMaxBytes,Us as radarCommunityTrendingMonthPath,Vs as radarCommunityTrendingMonthSchema,Fs as radarCommunityTrendingPlatformSchema,zs as radarCommunityTrendingSourceSchema,Ps as radarCommunityTrendingSourceStaleMs,Ys as radarCommunityTrendingSummary,Q as radarCommunityTrendingTopicSchema,Do as radarImprovementColumnPath,Fo as radarImprovementEligibilityReq,Io as radarImprovementEligibilityRes,Ao as radarImprovementEntrySchema,Lo as radarImprovementErrorRes,jo as radarImprovementHeadReq,Mo as radarImprovementHeadRes,Eo as radarImprovementPageMaxBytes,No as radarImprovementPageReq,Po as radarImprovementPageRes,To as radarImprovementPageSize,za as radarNotificationProjectionSchema,Ra as radarNotificationTargetSchema,qa as radarNotificationTaskPageSize,Wa as radarNotificationTaskSchema,Ka as radarNotificationTasksPath,Ya as radarNotificationTasksReq,Xa as radarNotificationTasksRes,Fa as radarNotificationTopicSchema,Ia as radarNotificationTopicsSchema,x as radarResetActionDetailV1Schema,H as radarResetActionDetailV2Schema,oi as radarResetActionDetailV3Schema,Ot as radarResetActionItemV2Schema,Ze as radarResetActionPageMaxBytesV2,Xe as radarResetActionPageMaxItemsV2,bt as radarResetActionSummaryV2Schema,Et as radarResetActiveActionItemV2Schema,Ne as radarResetAnalysisV1Schema,r as radarResetAnalyzerContractVersionV1,c as radarResetAudienceValues,It as radarResetChangeCoverageV2Schema,$e as radarResetChangePageMaxBytesV2,Qe as radarResetChangePageMaxItemsV2,Go as radarResetClueLifetimeMs,Ko as radarResetClueMaxBytes,Wo as radarResetCluePath,qo as radarResetClueSchema,Jo as radarResetClueSnapshotSchema,n as radarResetContractVersionV1,Je as radarResetContractVersionV2,tt as radarResetDetailBatchMaxBytesV2,et as radarResetDetailBatchMaxChunksV2,wt as radarResetDetailChunkReferenceV2Schema,Mt as radarResetDetailChunkRequestV2Schema,Tt as radarResetDetailManifestV2Schema,o as radarResetEffectValues,C as radarResetExportV1Schema,ti as radarResetExportV2Schema,pi as radarResetExportV3Schema,Jr as radarResetKindNoticeV2Schema,Ri as radarResetManagementActionSchema,Mi as radarResetManagementOperationSchema,zi as radarResetManagementResSchema,Li as radarResetManualApplyReqSchema,ji as radarResetManualCopySchema,Ni as radarResetManualDraftSchema,Fi as radarResetManualDraftSeedSchema,Pi as radarResetManualPreviewReqSchema,Ii as radarResetManualPreviewResSchema,Bi as radarResetManualResultResSchema,Le as radarResetNoticeKindValues,S as radarResetPendingActionV1Schema,ei as radarResetPendingActionV2Schema,l as radarResetPlanValues,T as radarResetPositiveDecimalV2Schema,s as radarResetProductValues,wi as radarResetPublicActionV1Schema,i as radarResetPublicDataLimits,D as radarResetPublicIdV2Schema,vi as radarResetPublicRecordsCorePath,Oi as radarResetPublicRecordsV1Schema,St as radarResetPublicationHomeFactsV2Schema,Yt as radarResetPublicationRevisionAvailableV2Schema,Re as radarResetPublicationTimingSchema,Rt as radarResetReadActionsDataV2Schema,At as radarResetReadActionsRequestV2Schema,Ht as radarResetReadActionsSuccessV2Schema,zt as radarResetReadChangesDataV2Schema,jt as radarResetReadChangesRequestV2Schema,Ut as radarResetReadChangesSuccessV2Schema,Nt as radarResetReadDetailBatchRequestV2Schema,Lt as radarResetReadHeadDataV2Schema,kt as radarResetReadHeadRequestV2Schema,Vt as radarResetReadHeadSuccessV2Schema,d as radarResetReasonBasisValues,u as radarResetReasonCategoryValues,Kt as radarResetSafeCauseSnapshotV2Schema,a as radarResetSeriesValues,O as radarResetSha256V2Schema,ie as radarResetSnapshotAvailableV1Schema,Ft as radarResetSourceChangeV2Schema,Wt as radarResetSourceErrorCodeValuesV2,Jt as radarResetSourceErrorEnvelopeV2Schema,wn as radarResetSourceErrorHttpStatusV2,Cn as radarResetSourceErrorIsRetryableV2,qt as radarResetSourceErrorV2Schema,Ye as radarResetSourceMaxRpcCallsV2,Gr as radarResetSourceTranslationsSchema,mi as radarResetStatisticsResponseV3Schema,fi as radarResetStatisticsV1Schema,rt as radarResetUInt64DecimalV2Schema,ot as radarResetUInt64DecimalV2ToBigInt,Ti as radarResetUnexecutedActionV1Schema,E as radarResetUtcTimestampV2Schema,Dt as radarResetWithdrawnActionItemV2Schema,Ei as radarResetWithdrawnActionV1Schema,zo as radarTiboSourceStatusMaxBytes,Ro as radarTiboSourceStatusPath,Ho as radarTiboSourceStatusSchema,br as radarTitledActivityFileSchema,_r as radarTitledActivityProgressSchema,Ca as radarWebsiteLocalePrefixes,Sa as radarWebsiteLocales,xa as radarWebsiteOrigin,wa as radarWebsitePagePaths,Da as radarWebsitePageUrl,Dr as readRadarActivityFile,kr as readRadarActivityFileV2,ma as readRadarActivityFileV3,As as readRadarCodexModels,bs as readRadarCodexReleaseDirectory,xs as readRadarCodexReleaseMonth,Ss as readRadarCodexReleaseNotes,Ks as readRadarCommunityTrendingLatest,qs as readRadarCommunityTrendingMonth,Zo as readRadarResetClueSnapshot,Uo as readRadarTiboSourceStatus,Or as readRadarTitledActivityFile,io as redactRadarBrowserRegistrationReferences,Sn as toSafeCauseSnapshotV2,wo as upgradeRadarBrowserSubscriptionCommandV1};
6
+ `),ee=O.encode(`\r
7
+ `),te=[],f=0;for(let e of n.chunks){if(!ln(c,l,f))return k(`source_stream_incomplete`,!0);f+=l.byteLength;let t=bn(c,d,f);if(t<0)return k(`source_stream_incomplete`,!0);let n=yn(c.slice(f,t));if(f=t+d.byteLength,n.get(`content-type`)!==`application/octet-stream`)return k(`source_chunk_mismatch`,!1);let r;try{r=cn.decode(pn(n.get(`x-radar-reset-action-id-b64`)))}catch(e){return k(`source_chunk_mismatch`,!1,e)}if(r!==e.resetActionId||n.get(`x-radar-detail-ordinal`)!==String(e.ordinal)||n.get(`x-radar-byte-size`)!==String(e.byteSize)||n.get(`x-radar-sha-256`)!==e.sha256)return k(`source_chunk_mismatch`,!1);if(f+e.byteSize+ee.byteLength>c.byteLength)return k(`source_stream_incomplete`,!0);let i=c.slice(f,f+e.byteSize);if(f+=e.byteSize,!ln(c,ee,f)||(f+=ee.byteLength,await mn(i)!==e.sha256))return k(`source_chunk_mismatch`,!1);te.push({...e,bytes:i})}return!ln(c,u,f)||f+u.byteLength!==c.byteLength?k(`source_stream_incomplete`,!0):te}const Sn=/authorization|cookie|token|secret|password|api[-_]?key/iu;function Cn(e,t){let n=[...e].slice(0,1024),r=``;for(let e of n){let n=O.encode(e).byteLength;if(n>t.remaining)break;t.remaining-=n,r+=e}return r}function wn(e,t,n,r){if(e===null||typeof e==`boolean`)return e;if(typeof e==`string`)return Cn(e,n);if(typeof e==`number`)return Number.isFinite(e)?e:String(e);if(typeof e==`bigint`||typeof e==`symbol`)return Cn(String(e),n);if(e===void 0)return`undefined`;if(typeof e==`function`)return`[Function ${e.name||`anonymous`}]`;if(r.has(e))return`[Circular]`;if(t>=4)return`[DepthLimit]`;if(r.add(e),Array.isArray(e))return e.slice(0,16).map(e=>wn(e,t+1,n,r));let i={},a=e instanceof Error?[[`type`,e.constructor.name],[`name`,e.name],[`message`,e.message],...e.cause===void 0?[]:[[`cause`,e.cause]],...Object.entries(e)]:Object.entries(e);for(let[e,o]of a.slice(0,16)){let a=Cn(String(e),n);if(!(a.length===0||Object.hasOwn(i,a))&&(n.remaining-=Math.min(n.remaining,8),i[a]=Sn.test(a)?`[REDACTED]`:wn(o,t+1,n,r),n.remaining<=0))break}return i}function Tn(e){let t=wn(e,0,{remaining:7e3},new Set),n=typeof t==`object`&&t&&!Array.isArray(t)?t:{type:e===null?`null`:typeof e,message:t};return qt.parse(n),n}function En(e){return e===`source_temporarily_unavailable`||e===`source_rpc_transport_failure`||e===`source_stream_incomplete`}function Dn(e){switch(e){case`source_invalid_request`:return 400;case`source_revision_unknown`:return 404;case`source_cursor_invalid`:case`source_chunk_mismatch`:return 409;case`source_response_over_capacity`:return 413;case`source_temporarily_unavailable`:case`source_rpc_transport_failure`:case`source_stream_incomplete`:return 503;case`source_integrity_conflict`:case`source_revision_identity_conflict`:case`source_sequence_exhausted`:return 500}}function On(e){let t={contractVersion:2,ok:!1,error:{code:e.code,operation:e.operation,stage:e.stage,...e.revision===void 0?{}:{revision:e.revision},retryable:En(e.code),correlationId:e.correlationId,cause:Tn(e.cause)}};return Yt.parse(t)}const kn=e.strictObject({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),An=e.iso.date(),A=e.strictObject({category:e.enum([`improvement`,`direct_reset`,`reset_card`]),deliveryState:e.enum([`preview`,`landed`]),description:kn,dateBasis:e.enum([`occurrence`,`announcement`,`unresolved`]),sourceUrls:e.array(e.url({protocol:/^https?$/})).min(1)}),jn=e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`ready`),text:kn}),e.strictObject({state:e.enum([`pending`,`failed`,`not_applicable`]),text:e.null()})]),j=e.strictObject({contractVersion:e.literal(1),generatedAt:e.iso.datetime(),timeZone:e.string().refine(e=>{try{return new Intl.DateTimeFormat(`en`,{timeZone:e}),!0}catch{return!1}},`Invalid source time zone`),startDate:An,endDate:An,processing:e.strictObject({hasPending:e.boolean(),hasFailures:e.boolean()}),days:e.array(e.strictObject({date:An,dayNumber:e.number().int().min(1).max(28),outcome:e.enum([`unconfirmed`,`improvement`,`reset`,`both`]),entries:e.array(A),summary:jn})).length(28),undatedEntries:e.array(A)}).superRefine((e,t)=>{let n=Date.parse(`${e.startDate}T00:00:00Z`);for(let[r,i]of e.days.entries()){let e=new Date(n+r*864e5).toISOString().slice(0,10);(i.date!==e||i.dayNumber!==r+1)&&t.addIssue({code:`custom`,path:[`days`,r],message:`Days must be contiguous and numbered in order`}),i.entries.some(e=>e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`days`,r,`entries`],message:`Unresolved dates belong in undatedEntries`});let a=i.entries.filter(e=>e.deliveryState===`landed`),o=a.some(e=>e.category===`improvement`),s=a.some(e=>e.category!==`improvement`),c=o?s?`both`:`improvement`:s?`reset`:`unconfirmed`;(i.outcome!==c||a.length===0!=(i.summary.state===`not_applicable`))&&t.addIssue({code:`custom`,path:[`days`,r],message:`Outcome and summary must reflect landed evidence`})}e.days.at(-1)?.date!==e.endDate&&t.addIssue({code:`custom`,path:[`endDate`],message:`End must match the last activity day`}),e.undatedEntries.some(e=>e.dateBasis!==`unresolved`)&&t.addIssue({code:`custom`,path:[`undatedEntries`],message:`Undated entries must have unresolved dates`})});function Mn(e){return j.parse(e)}function Nn(e){let t=e.filter(e=>e.deliveryState===`landed`),n=t.some(e=>e.category===`improvement`),r=t.some(e=>e.category!==`improvement`);return n?r?`both`:`improvement`:r?`reset`:`unconfirmed`}const Pn=524288,Fn=j.shape,In=Fn.days.element,Ln=A.extend({date:Fn.startDate.nullable()}).superRefine((e,t)=>{e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}),Rn=e.strictObject({state:e.enum([`unconfirmed`,`ongoing`,`ended`]),sourceUrls:e.array(A.shape.sourceUrls.element)}).superRefine((e,t)=>{e.state!==`unconfirmed`&&e.sourceUrls.length===0&&t.addIssue({code:`custom`,path:[`sourceUrls`],message:`Confirmed lifecycle states require source evidence`})}),zn=In.omit({date:!0,entries:!0}).extend({entries:e.array(Ln),lifecycle:Rn}),Bn=e.strictObject({contractVersion:e.literal(2),generatedAt:Fn.generatedAt,timeZone:Fn.timeZone,processing:Fn.processing,days:e.array(zn).length(28),unassignedEntries:e.array(Ln)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries()){r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`});let e=r.entries.filter(e=>e.deliveryState===`landed`),i=Nn(r.entries);(r.outcome!==i||e.length===0!=(r.summary.state===`not_applicable`))&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome and summary must reflect landed evidence`})}});function Vn(e){return Bn.parse(e)}const Hn=Pn,M=e.strictObject({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),Un=A.extend({title:M}),Wn=Bn.shape,Gn=Wn.days.element,Kn=Gn.shape.entries.element.safeExtend({title:M}),qn=Gn.extend({title:M.nullable(),entries:e.array(Kn)}).superRefine((e,t)=>{e.title!==null!=(e.summary.state===`ready`)&&t.addIssue({code:`custom`,path:[`title`],message:`A daily title is available exactly when its summary is ready`})}),Jn=e.strictObject({...Wn,contractVersion:e.literal(3),days:e.array(qn),unassignedEntries:e.array(Kn)}).superRefine((e,t)=>{let n=Bn.safeParse({contractVersion:2,generatedAt:e.generatedAt,timeZone:e.timeZone,processing:e.processing,days:e.days.map(({title:e,...t})=>({...t,entries:t.entries.map(({title:e,...t})=>t)})),unassignedEntries:e.unassignedEntries.map(({title:e,...t})=>t)});if(!n.success)for(let e of n.error.issues)t.addIssue({...e})});function Yn(e){return{improvementDays:e.days.filter(e=>e.outcome===`improvement`||e.outcome===`both`).length,resetDays:e.days.filter(e=>e.outcome===`reset`||e.outcome===`both`).length}}function Xn(e){return Jn.parse(e)}const Zn=Hn,Qn=Bn.shape,$n=Jn.shape.unassignedEntries,er=Qn.days.element.omit({summary:!0}).extend({entries:$n}),tr=e.strictObject({...Qn,contractVersion:e.literal(4),days:e.array(er).length(28),unassignedEntries:$n}).superRefine((e,t)=>{for(let[n,r]of e.days.entries())r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`}),r.outcome!==Nn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function nr(e){return tr.parse(e)}function rr(e,t){let n=new Set;for(let r of e)n.has(r.eventId)&&t.addIssue({code:`custom`,message:`Duplicate activity eventId`}),n.add(r.eventId)}function ir(e,t,n){let r=n.reduce((t,n)=>t+e.reactionCounts[n],0);(!Number.isSafeInteger(r)||r!==e.reactionTotal)&&t.addIssue({code:`custom`,path:[`reactionTotal`],message:`Total must equal all reaction counts`})}async function ar(e,t,n){if(e.status!==200){let t={status:e.status,statusText:e.statusText};try{await e.body?.cancel()}catch(e){throw Error(`activity_file_http_error`,{cause:{...t,cancellationCause:e}})}throw Error(`activity_file_http_error`,{cause:t})}if(e.body===null)throw Error(`activity_file_body_missing`);let r=e.body.getReader(),i=[],a=0;try{for(;;){let e=await r.read();if(e.done)break;if(a+=e.value.byteLength,a>n)throw Error(`activity_file_too_large`,{cause:{maxBytes:n,observedBytes:a}});i.push(e.value)}let e=new Uint8Array(a),o=0;for(let t of i)e.set(t,o),o+=t.byteLength;return t.parse(JSON.parse(new TextDecoder(`utf-8`,{fatal:!0}).decode(e)))}catch(e){try{await r.cancel()}catch{}throw Error(`activity_file_read_failed`,{cause:e})}finally{r.releaseLock()}}function or(e,t,n){let r=new TextEncoder().encode(JSON.stringify(t.parse(e)));if(r.byteLength>n)throw Error(`activity_file_too_large`,{cause:{byteLength:r.byteLength}});return r}const N=[`👍`,`😂`,`🤡`,`💀`,`😭`,`🔥`,`🎉`,`👀`,`🙏`,`🫠`],sr=e.enum(N),P=e.string().min(1).max(128),F=524288,cr=`https://data.radarultra.com/activity/v1/latest.json`,lr=`https://data.radarultra.com/activity/v2/latest.json`,ur=A.extend({eventId:P}),dr=j.safeExtend({days:e.array(j.shape.days.element.extend({entries:e.array(ur)})).length(28),undatedEntries:e.array(ur)});function fr(e,t){rr([...e.days.flatMap(e=>e.entries),...e.undatedEntries],t)}const pr=dr.superRefine(fr),mr=e.record(sr,e.number().int().nonnegative()),hr=e.strictObject({reactionCounts:mr,reactionTotal:e.number().int().nonnegative()});function gr(e,t){ir(e,t,N)}const _r=ur.extend(hr.shape).superRefine(gr),vr=dr.safeExtend({days:e.array(dr.shape.days.element.extend({entries:e.array(_r)})).length(28),undatedEntries:e.array(_r)}).superRefine(fr),I=e.strictObject({publishedAt:e.iso.datetime(),reactionIds:e.array(sr).length(N.length).refine(e=>new Set(e).size===N.length,`Every reaction must occur exactly once`),progress:vr}),yr=Jn.shape,br=yr.unassignedEntries.element.safeExtend({eventId:P}),xr=e.strictObject({...yr,days:e.array(yr.days.element.safeExtend({entries:e.array(br)})).length(28),unassignedEntries:e.array(br)}),Sr=xr.superRefine((e,t)=>{let n=({eventId:e,...t})=>t,r=Jn.safeParse({...e,days:e.days.map(e=>({...e,entries:e.entries.map(n)})),unassignedEntries:e.unassignedEntries.map(n)});if(!r.success)for(let e of r.error.issues)t.addIssue({...e});rr([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),Cr=br.safeExtend(hr.shape).superRefine(gr),wr=xr.safeExtend({days:e.array(yr.days.element.safeExtend({entries:e.array(Cr)})).length(28),unassignedEntries:e.array(Cr)}).superRefine((e,t)=>{let n=({reactionCounts:e,reactionTotal:t,...n})=>n,r=Sr.safeParse({...e,days:e.days.map(e=>({...e,entries:e.entries.map(n)})),unassignedEntries:e.unassignedEntries.map(n)});if(!r.success)for(let e of r.error.issues)t.addIssue({...e})}),Tr=I.extend({progress:wr}),Er=tr.shape,Dr=Er.unassignedEntries.element.safeExtend({eventId:P}),Or=tr.safeExtend({days:e.array(Er.days.element.safeExtend({entries:e.array(Dr)})).length(28),unassignedEntries:e.array(Dr)}).superRefine((e,t)=>{rr([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),kr=Dr.safeExtend(hr.shape).superRefine(gr),Ar=Or.safeExtend({days:e.array(Er.days.element.safeExtend({entries:e.array(kr)})).length(28),unassignedEntries:e.array(kr)}),jr=I.extend({progress:Ar});async function Mr(e){return ar(e,I,F)}async function Nr(e){return ar(e,Tr,F)}async function Pr(e){return ar(e,jr,F)}function Fr(e){return or(e,I,F)}function Ir(e){return or(e,Tr,F)}function Lr(e){return or(e,jr,F)}const Rr=e.strictObject({changeId:e.string().min(1).max(128),eventId:e.string().min(1).max(128),revision:e.int().positive(),kind:e.enum([`created`,`updated`,`withdrawn`]),date:e.iso.date().nullable(),entry:A,receivedAt:e.iso.datetime().nullable(),acceptedAt:e.iso.datetime()}),zr=e.strictObject({contractVersion:e.literal(1),changes:e.array(Rr),nextCursor:e.string().min(1),hasMore:e.boolean()}),Br=Rr.extend({dayNumber:j.shape.days.element.shape.dayNumber.nullable()}),Vr=zr.extend({contractVersion:e.literal(2),changes:e.array(Br)}),Hr=e.int().min(0).max(2**53-1),Ur=e.int().min(1).max(28),Wr=e.enum([`yes`,`no`]).nullable(),Gr=e.strictObject({choice:Wr}),Kr=e.strictObject({yes:Hr,no:Hr,total:Hr}).superRefine((e,t)=>{(!Number.isSafeInteger(e.yes+e.no)||e.total!==e.yes+e.no)&&t.addIssue({code:`custom`,path:[`total`],message:`Total must equal the effective choices.`})}),qr=e.strictObject({dayNumber:Ur,state:e.enum([`unopened`,`open`,`closed`]),choice:Wr,outcome:e.enum([`unconfirmed`,`yes`,`no`]),personalResult:e.enum([`none`,`waiting`,`correct`,`incorrect`]),corrected:e.boolean(),counts:Kr}).superRefine((e,t)=>{let n=e.choice===null?`none`:e.outcome===`unconfirmed`?`waiting`:e.choice===e.outcome?`correct`:`incorrect`;e.personalResult!==n&&t.addIssue({code:`custom`,path:[`personalResult`],message:`Personal result must match the confirmed outcome and choice.`}),e.state!==`closed`&&e.outcome!==`unconfirmed`&&t.addIssue({code:`custom`,path:[`outcome`],message:`An open or unopened day cannot have a confirmed result.`}),e.state===`unopened`&&(e.choice!==null||e.counts.total!==0)&&t.addIssue({code:`custom`,path:[`state`],message:`An unopened day cannot have choices.`})}),Jr=e.strictObject({revision:Hr,openDayNumber:Ur.nullable(),days:e.array(qr).length(28)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries()){r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Every official day must occur once, in order.`});let i=e.openDayNumber===null||r.dayNumber<e.openDayNumber?`closed`:r.dayNumber===e.openDayNumber?`open`:`unopened`;r.state!==i&&t.addIssue({code:`custom`,path:[`days`,n,`state`],message:`Only the next official day may be open.`})}}),Yr=e.strictObject({error:e.strictObject({code:e.enum([`invalid_request`,`payload_too_large`,`unsupported_media_type`,`origin_not_allowed`,`rate_limited`,`dependency_unavailable`,`internal_error`,`day_closed`,`identity_unavailable`]),message:e.string().min(1).max(2048),requestId:e.string().min(1).max(128),operation:e.enum([`get_guesses`,`set_guess`]),stage:e.string().min(1).max(128),cause:e.record(e.string(),e.unknown()),saveOutcome:e.enum([`not_saved`,`unknown`]).optional()})}).superRefine(({error:e},t)=>{e.operation===`set_guess`!=(e.saveOutcome!==void 0)&&t.addIssue({code:`custom`,path:[`error`,`saveOutcome`],message:`Only save failures must include a save outcome.`})}),Xr=e.strictObject({"zh-Hans":x.shape.noticeTimeline.element.shape.sourceTextZh,"zh-Hant":x.shape.noticeTimeline.element.shape.sourceTextZh,ja:x.shape.noticeTimeline.element.shape.sourceTextZh,ko:x.shape.noticeTimeline.element.shape.sourceTextZh}),Zr=x.shape.noticeTimeline.element.omit({sourceTextZh:!0}).extend({sourceTranslations:Xr}).strict(),Qr=e.strictObject({...x.shape,contractVersion:e.literal(2),noticeTimeline:e.array(Zr).min(1).max(i.actionDetail.noticeTimeline)}),$r=Zr.omit({phase:!0}).extend({kinds:S.shape.noticeTimeline.element.shape.kinds}).strict(),ei=e.strictObject({...S.shape,noticeTimeline:e.array($r).min(1).max(i.actionDetail.noticeTimeline)}),ti=e=>{let{sourceTranslations:t,...n}=e;return{...n,sourceTextZh:t[`zh-Hans`]}},ni=e=>({...e,contractVersion:1,noticeTimeline:e.noticeTimeline.map(ti)}),ri=e=>({...e,noticeTimeline:e.noticeTimeline.map(ti)}),ii=(e,t)=>{for(let n of e.error?.issues??[])t.addIssue({...n})},L=Qr.superRefine((e,t)=>{ii(x.safeParse(ni(e)),t)}),ai=ei.superRefine((e,t)=>{ii(S.safeParse(ri(e)),t)}),oi=e.strictObject({...He.shape,contractVersion:e.literal(2),actions:e.array(L).min(1).max(i.analysis.actions),pendingResetActions:e.array(ai).max(i.analysis.actions)}).superRefine((e,t)=>{ii(He.safeParse({...e,contractVersion:1,actions:e.actions.map(ni),pendingResetActions:e.pendingResetActions.map(ri)}),t),new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]})}),si=e=>L.parse(e),ci=e=>ai.parse(e),li=e=>oi.parse(e);function ui(e){let t=li(e);return He.parse({...t,contractVersion:1,actions:t.actions.map(ni),pendingResetActions:t.pendingResetActions.map(ri)})}const di=e.object(L.shape).omit({actionScope:!0,reasons:!0}).extend({contractVersion:e.literal(3)}).strict().superRefine((e,n)=>t(e,n,C)),fi=oi.shape.generatedAt,pi=e.strictObject({resetActionId:x.shape.resetActionId,effect:x.shape.resetEffects.options[0].shape.values.element.nullable(),at:fi,basis:e.enum([`execution_confirmation`,`announcement`]),sourceUrl:x.shape.noticeTimeline.element.shape.sourceUrl}),mi=e.number().int().nonnegative(),hi=e.number().finite().nonnegative();function R(e,t){try{return C(e,t)}catch{return}}function gi(e,t){return e<t?-1:+(e>t)}const _i=e.strictObject({timeBasis:e.literal(`confirmation_priority`),startAt:fi,total:mi,hardResetCount:mi,bankedResetCount:mi,unknownCount:mi,records:e.array(pi).max(i.analysis.actions*2),intervalSummary:e.strictObject({mean:hi,max:hi}).nullable()}).superRefine((e,t)=>{let n=(e,n=[])=>t.addIssue({code:`custom`,message:e,path:n}),r={hard_reset:0,banked_reset:0,unknown:0},a=new Set,o=new Map,s=new Set,c=new Set;for(let[t,i]of e.records.entries()){r[i.effect??`unknown`]+=1;let l=JSON.stringify([i.resetActionId,i.effect]);a.has(l)&&n(`statistics_record_identity_duplicate`,[`records`,t]),a.add(l),i.effect===null?s.add(i.resetActionId):c.add(i.resetActionId),R(i.at,e.startAt)===-1&&n(`statistics_record_before_window`,[`records`,t,`at`]);let u=e.records.at(t-1);if(t>0&&u!==void 0){let e=R(u.at,i.at);e!==void 0&&(e>0||e===0&&(gi(u.resetActionId,i.resetActionId)>0||u.resetActionId===i.resetActionId&&gi(u.effect??``,i.effect??``)>0))&&n(`statistics_records_not_stably_sorted`,[`records`,t])}let d=o.get(i.resetActionId);(d===void 0||R(i.at,d)===-1)&&o.set(i.resetActionId,i.at)}o.size>i.analysis.actions&&n(`statistics_event_limit_exceeded`),[...s].some(e=>c.has(e))&&n(`statistics_event_effect_state_mismatch`),e.total!==e.records.length&&n(`statistics_total_mismatch`,[`total`]),e.hardResetCount!==r.hard_reset&&n(`statistics_hard_reset_count_mismatch`,[`hardResetCount`]),e.bankedResetCount!==r.banked_reset&&n(`statistics_banked_reset_count_mismatch`,[`bankedResetCount`]),e.unknownCount!==r.unknown&&n(`statistics_unknown_count_mismatch`,[`unknownCount`]);let l=[...o.values()].sort((e,t)=>R(e,t)??0),u=l.slice(1).map((e,t)=>Number(((Date.parse(e)-Date.parse(l.at(t)))/864e5).toFixed(6)));if(u.length===0)e.intervalSummary!==null&&n(`statistics_interval_summary_must_be_null`,[`intervalSummary`]);else if(u.every(Number.isFinite)){let t=Number((u.reduce((e,t)=>e+t,0)/u.length).toFixed(6)),r=Math.max(...u);(e.intervalSummary===null||Math.abs(e.intervalSummary.mean-t)>1e-9||Math.abs(e.intervalSummary.max-r)>1e-9)&&n(`statistics_interval_summary_mismatch`,[`intervalSummary`])}}),vi=e.object(oi.shape).omit({analysis:!0}).extend({contractVersion:e.literal(3),statistics:_i,actions:e.array(di).min(1).max(i.analysis.actions)}).strict().superRefine((e,t)=>{let n=(e,n=[])=>t.addIssue({code:`custom`,message:e,path:n});new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&n(`export_utf8_size_limit_exceeded`);let r=new Map(e.actions.map(e=>[e.resetActionId,e])),a=new Set(e.statistics.records.map(e=>e.resetActionId));r.size!==e.actions.length&&n(`export_action_identity_duplicate`,[`actions`]),new Set(e.pendingResetActions.map(e=>e.resetActionId)).size!==e.pendingResetActions.length&&n(`export_pending_action_identity_duplicate`,[`pendingResetActions`]);for(let[t,r]of e.actions.entries()){let i=e.actions.at(t-1);t>0&&i!==void 0&&fi.safeParse(i.firstAnnouncedAt).success&&fi.safeParse(r.firstAnnouncedAt).success&&Ue(i,r)>0&&n(`export_actions_not_stably_sorted`,[`actions`,t]),R(r.firstAnnouncedAt,e.generatedAt)===1&&n(`export_action_after_snapshot`,[`actions`,t,`firstAnnouncedAt`]);let o=R(r.firstAnnouncedAt,e.statistics.startAt);o!==void 0&&o>=0&&!a.has(r.resetActionId)&&n(`export_statistics_window_action_missing`,[`actions`,t,`resetActionId`])}for(let[t,i]of e.statistics.records.entries()){let a=[`statistics`,`records`,t],o=r.get(i.resetActionId);if(o===void 0){n(`export_statistics_action_missing`,a);continue}(o.resetEffects.state===`unknown`!=(i.effect===null)||i.effect!==null&&!o.resetEffects.values.some(e=>e===i.effect))&&n(`export_statistics_effect_mismatch`,[...a,`effect`]);let s=o.noticeTimeline.filter(e=>e.sourceUrl===i.sourceUrl&&R(e.authoredAt,i.at)===0);s.length===0&&n(`export_statistics_source_mismatch`,a),i.basis===`execution_confirmation`&&!s.some(e=>e.phase===`executed`)&&n(`export_statistics_confirmation_source_invalid`,a),i.basis===`announcement`&&R(i.at,o.firstAnnouncedAt)!==0&&n(`export_statistics_announcement_time_mismatch`,a),R(i.at,e.generatedAt)===1&&n(`export_statistics_record_after_snapshot`,[...a,`at`])}}),yi=e.strictObject({contractVersion:e.literal(1),data:e.strictObject({sourceWatermark:ie.shape.sourceWatermark,statistics:_i}),meta:e.strictObject({observedAt:fi})}),bi=e=>vi.parse(e);function xi(e,t){let n=oi.parse(e);return bi({contractVersion:3,generatedAt:n.generatedAt,statistics:t,pendingResetActions:n.pendingResetActions,actions:n.actions.map(({actionScope:e,reasons:t,...n})=>({...n,contractVersion:3}))})}const Si=e=>di.parse(e),Ci=`/api/v1/codex-reset-public-records`,wi=e.array($r).min(1).max(i.actionDetail.noticeTimeline),Ti=e.strictObject(L.shape).omit({contractVersion:!0,noticeCount:!0,noticeTimeline:!0}).extend({noticeTimeline:wi}).strict();function Ei(e){let t=e.noticeTimeline.filter(e=>e.kinds.includes(`executed`)||e.kinds.includes(`preview`)).map(({kinds:e,...t})=>({...t,phase:e.includes(`executed`)?`executed`:`preview`}));return{...e,contractVersion:2,noticeCount:t.length,noticeTimeline:t}}const Di=e=>L.parse(Ei(e));function Oi(e,t){let n=new Set;for(let[r,i]of e.entries()){n.has(i.sourceUrl)&&t.addIssue({code:`custom`,message:`public_notice_source_duplicate`,path:[`noticeTimeline`,r]}),n.add(i.sourceUrl);let a=e.at(r-1),o=L.shape.firstAnnouncedAt;r>0&&a!==void 0&&o.safeParse(a.authoredAt).success&&o.safeParse(i.authoredAt).success&&C(a.authoredAt,i.authoredAt)>0&&t.addIssue({code:`custom`,message:`public_notice_timeline_not_ascending`,path:[`noticeTimeline`,r]})}}const ki=Ti.superRefine((e,t)=>{Oi(e.noticeTimeline,t);let n=L.safeParse(Ei(e));for(let e of n.error?.issues??[])t.addIssue({...e})}),Ai=e.strictObject(ai.shape).omit({state:!0,executedEffects:!0,pendingEffects:!0}).superRefine((e,t)=>{Oi(e.noticeTimeline,t)}),ji=e.strictObject(L.shape).pick({resetActionId:!0}).extend({lastActiveFirstAnnouncedAt:L.shape.firstAnnouncedAt,withdrawnAt:L.shape.firstAnnouncedAt}).strict(),Mi=i.analysis.actions,Ni=e.strictObject({contractVersion:e.literal(1),sourceWatermark:L.shape.resetActionId,generatedAt:L.shape.firstAnnouncedAt,actions:e.array(ki).min(1).max(Mi),pendingResetActions:e.array(ai).max(Mi),unexecutedResetActions:e.array(Ai).max(Mi),withdrawnResetActions:e.array(ji).max(Mi)}).superRefine((e,t)=>{for(let n of[`actions`,`pendingResetActions`,`unexecutedResetActions`,`withdrawnResetActions`])new Set(e[n].map(e=>e.resetActionId)).size!==e[n].length&&t.addIssue({code:`custom`,message:`public_reset_identity_duplicate`,path:[n]});let n=new Set(e.actions.map(e=>e.resetActionId));for(let n of e.pendingResetActions)Oi(n.noticeTimeline,t);(e.unexecutedResetActions.some(e=>n.has(e.resetActionId))||e.withdrawnResetActions.some(e=>n.has(e.resetActionId)))&&t.addIssue({code:`custom`,message:`public_reset_lifecycle_conflict`});for(let[n,r]of e.actions.entries()){let i=e.actions.at(n-1),a=L.shape.firstAnnouncedAt;n>0&&i!==void 0&&a.safeParse(i.firstAnnouncedAt).success&&a.safeParse(r.firstAnnouncedAt).success&&Ue(i,r)>=0&&t.addIssue({code:`custom`,message:`public_reset_actions_not_ascending`,path:[`actions`,n]})}new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`public_reset_records_utf8_size_limit_exceeded`})}),Pi=L.shape,Fi=e.strictObject({title:e.string(),body:e.string()}),Ii=e.strictObject({zh:Fi,en:Fi}),Li=e.enum([`end_preview`,`restore_preview`,`set_auto_notification`,`notify`]),Ri=e.strictObject({resetActionId:Pi.resetActionId,operation:Li,expectedRevision:e.int().nonnegative(),copy:Ii.nullable(),automaticNotification:e.boolean().nullable()}).superRefine((e,t)=>{e.operation===`notify`!=(e.copy!==null)&&t.addIssue({code:`custom`,path:[`copy`],message:`notification_copy_operation_mismatch`}),e.operation===`set_auto_notification`!=(e.automaticNotification!==null)&&t.addIssue({code:`custom`,path:[`automaticNotification`],message:`notification_policy_operation_mismatch`})}),zi=Ri,Bi=Ri,Vi=e.strictObject({digest:e.string().regex(/^sha256:[a-f0-9]{64}$/),sourceWatermark:e.string().min(1),draft:Ri}),Hi=e.strictObject({operationId:e.uuid(),preview:Vi}),Ui=e.strictObject({resetActionId:Pi.resetActionId,revision:e.number().int().nonnegative(),state:e.enum([`preview`,`executed`,`cancelled`,`undetermined`]),firstAnnouncedAt:T.nullable(),officialConfirmed:e.boolean(),pendingPreview:e.boolean(),previewClosed:e.boolean(),automaticNotification:e.boolean(),sourceUrls:e.array(Pi.noticeTimeline.element.shape.sourceUrl),availableOperations:e.array(Li),notificationOperationId:e.uuid().nullable()}),Wi=e.strictObject({actions:e.array(Ui)}),Gi=e.discriminatedUnion(`status`,[e.strictObject({status:e.literal(`unknown`),operationId:e.uuid()}),e.strictObject({status:e.literal(`saved`),operationId:e.uuid(),resetActionId:Pi.resetActionId,operation:Li,revision:e.number().int().positive(),notification:e.strictObject({state:e.enum([`disabled`,`pending`,`claimed`,`retry_wait`,`accepted`,`rejected`,`expired`]),resultCode:e.string().nullable(),diagnostic:e.record(e.string(),e.unknown()).nullable()})})]),z=x.shape.noticeTimeline.element.shape,Ki=e.enum([`initial`,`supplement`,`correction`]).nullable(),qi=e.strictObject({authoredAt:z.authoredAt,role:Ki,sourceUrl:z.sourceUrl,sourceText:z.sourceText,sourceTextZh:z.sourceTextZh}),Ji=e.array(qi).min(1).superRefine((e,t)=>{let n=new Set,r;for(let[i,a]of e.entries()){if(n.has(a.sourceUrl)&&t.addIssue({code:`custom`,path:[i,`sourceUrl`],message:`An original post may appear only once per improvement`}),n.add(a.sourceUrl),!z.authoredAt.safeParse(a.authoredAt).success){r=void 0;continue}if(r!==void 0){let e=C(r.authoredAt,a.authoredAt);(e>0||e===0&&r.sourceUrl>a.sourceUrl)&&t.addIssue({code:`custom`,path:[i],message:`Posts must be ordered by authoredAt and sourceUrl`})}r=a}}),Yi=Zn,Xi=A.omit({description:!0}).extend({category:e.literal(`improvement`),title:M,posts:Ji}),Zi=A.extend({category:e.enum([`direct_reset`,`reset_card`]),title:M}),Qi=e.discriminatedUnion(`category`,[Xi,Zi]),$i=tr.shape,ea=$i.unassignedEntries.element.shape.date;function ta(e,t){e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}const na=e.discriminatedUnion(`category`,[Xi.extend({date:ea}).superRefine(ta),Zi.extend({date:ea}).superRefine(ta)]),ra=e.strictObject({...$i,contractVersion:e.literal(5),days:e.array($i.days.element.extend({entries:e.array(na)})).length(28),unassignedEntries:e.array(na)}).superRefine((e,t)=>{for(let[n,r]of e.days.entries())r.dayNumber!==n+1&&t.addIssue({code:`custom`,path:[`days`,n,`dayNumber`],message:`Official days must be numbered in order`}),r.outcome!==Nn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function ia(e){return ra.parse(e)}const aa=`https://data.radarultra.com/activity/v3/latest.json`,oa=ra.shape,[sa,ca]=oa.unassignedEntries.element.options,la=sa.safeExtend({eventId:P}),ua=ca.safeExtend({eventId:P}),da=e.discriminatedUnion(`category`,[la,ua]),fa=ra.safeExtend({days:e.array(oa.days.element.extend({entries:e.array(da)})).length(28),unassignedEntries:e.array(da)}).superRefine((e,t)=>{rr([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),pa={reactionCounts:mr,reactionTotal:e.number().int().nonnegative()},ma=(e,t)=>ir(e,t,N),ha=e.discriminatedUnion(`category`,[la.safeExtend(pa).superRefine(ma),ua.safeExtend(pa).superRefine(ma)]),ga=fa.safeExtend({days:e.array(oa.days.element.extend({entries:e.array(ha)})).length(28),unassignedEntries:e.array(ha)}),_a=I.extend({progress:ga});async function va(e){return ar(e,_a,F)}function ya(e){return or(e,_a,F)}const ba=e.discriminatedUnion(`category`,[Xi,A.extend({category:e.enum([`direct_reset`,`reset_card`])})]),xa=Br.extend({entry:ba}),Sa=Vr.extend({contractVersion:e.literal(3),changes:e.array(xa)});function Ca(e){return xa.parse(e)}function wa(e){return Sa.parse(e)}const Ta=`https://radarultra.com`,Ea=[`zh-Hans`,`zh-Hant`,`en`,`ja`,`ko`],B={"zh-Hans":`zh-hans`,"zh-Hant":`zh-hant`,en:`en`,ja:`ja`,ko:`ko`},Da={"zh-Hans":`/${B[`zh-Hans`]}`,"zh-Hant":`/${B[`zh-Hant`]}`,en:``,ja:`/${B.ja}`,ko:`/${B.ko}`},Oa=`/zh`,ka={reset:`/codex`,improvement:`/codex/28-day-challenge`,changelog:`/codex/changelog`,models:`/codex/models`,community:`/codex/community`},V=e.discriminatedUnion(`product`,[e.strictObject({product:e.literal(`cli`),version:e.string().regex(/^\d+\.\d+\.\d+$/)}),e.strictObject({product:e.literal(`app`),version:e.string().regex(/^\d{2}\.\d{3,4}$/)})]),H=e.string().regex(/^(?!\.{1,2}$)[a-z0-9.-]+$/);function Aa(e,t){return Ta+Da[t]+ka[e]}function ja(e,t){let n=t===`zh-Hans`?`/zh`:Da[t];return Ta+n+ka[e]}function Ma(e,t,n){let r=V.parse({product:e,version:t});return`${Aa(`changelog`,n)}/${r.product}/${r.version}`}function Na(e,t){return`${Aa(`models`,t)}/${H.parse(e)}`}const Pa=Object.freeze({timeZone:`America/Los_Angeles`,startDate:`2026-10-05`,endDate:`2026-11-01`}),Fa=Date.parse(`${Pa.startDate}T00:00:00Z`),Ia=(Date.parse(`${Pa.endDate}T00:00:00Z`)-Fa)/864e5+1,La=new Intl.DateTimeFormat(`en-CA`,{timeZone:Pa.timeZone,year:`numeric`,month:`2-digit`,day:`2-digit`});function Ra(e){let t=La.formatToParts(e),n=e=>Number(t.find(t=>t.type===e).value),r=(Date.UTC(n(`year`),n(`month`)-1,n(`day`))-Fa)/864e5,i=r<0?`before`:r>=Ia?`ended`:`live`,a=Math.min(Ia,Math.max(1,r+1));return{phase:i,today:a,ongoingDay:i===`live`?a:null}}const za=e.enum([`reset`,`improvement`]),Ba=e.array(za).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),Va=e=>new Set(Ea.flatMap(t=>[Aa(e,t),ja(e,t)])),Ha={reset:Va(`reset`),improvement:Va(`improvement`)},Ua=t=>e.url().refine(e=>Ha[t].has(e),`notification_target_url_invalid`),Wa=e.url().refine(e=>Object.values(Ha).some(t=>t.has(e)),`notification_target_not_owned`),Ga=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`reset`),webUrl:Ua(`reset`),miniPath:e.literal(`pages/index/index`)}).strict(),e.object({kind:e.literal(`improvement`),webUrl:Ua(`improvement`),miniPath:e.literal(`pages/index/index?page=challenge`)}).strict()]),Ka=e.object({topics:Ba,target:Ga}).strict().refine(e=>e.topics.includes(e.target.kind),`notification_target_topic_mismatch`),qa=e.enum([`reset`,`improvement`,`clue`]),Ja=e.object({topics:e.array(qa).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),target:Ga}).strict().refine(e=>e.topics.some(t=>(t===`clue`?`reset`:t)===e.target.kind),`notification_target_topic_mismatch`);function Ya(e,t){let n=Xa(e===`clue`?`reset`:e,t);return Ja.parse({...n,topics:[e],target:{...n.target,webUrl:ja(n.target.kind,t)}})}function Xa(e,t){return Ka.parse({topics:[e],target:{kind:e,webUrl:Aa(e,t),miniPath:e===`reset`?`pages/index/index`:`pages/index/index?page=challenge`}})}const Za=e.object({notificationId:e.uuid(),eventId:e.uuid(),title:e.string().trim().min(1).max(512),createdAt:e.iso.datetime(),deliverBy:e.iso.datetime(),...Ka.shape}).strict().superRefine((e,t)=>{e.topics.includes(e.target.kind)||t.addIssue({code:`custom`,message:`notification_target_topic_mismatch`}),C(e.deliverBy,e.createdAt)<=0&&t.addIssue({code:`custom`,message:`notification_task_deadline_invalid`})});function Qa(e,t){return C(e.createdAt,t.createdAt)||(e.notificationId<t.notificationId?-1:+(e.notificationId>t.notificationId))}const $a=`/api/v1/notification-tasks`,eo=100,to=e.string().min(1).max(8192),no=e.object({cursor:to.optional()}).strict(),ro=e.object({contractVersion:e.literal(1),roundCursor:to,notifications:e.array(Za).max(100),nextCursor:to.nullable()}).strict().superRefine((e,t)=>{new Set(e.notifications.map(e=>e.notificationId)).size!==e.notifications.length&&t.addIssue({code:`custom`,message:`notification_task_duplicate`});for(let n=1;n<e.notifications.length;n++)Qa(e.notifications.at(n-1),e.notifications.at(n))>=0&&t.addIssue({code:`custom`,message:`notification_task_order_invalid`});e.nextCursor!==null&&e.notifications.length===0&&t.addIssue({code:`custom`,message:`notification_task_empty_continuation`})}),io=`/api/browser-notifications`,ao=e.string().min(1).max(128),oo=e.uuid(),so=e.enum(Ea),co=e.strictObject({reset:e.boolean(),improvement:e.boolean()}),lo=`[cdef][\\w-]{21}`,uo=e.strictObject({fid:e.string().regex(RegExp(`^${lo}$`))});function fo(e){return e.replace(RegExp(`(^|[^\\w-])${lo}(?![\\w-])`,`g`),`$1[registration]`)}const U={operationId:oo,expectedRevision:ao},po=e.discriminatedUnion(`action`,[e.strictObject({...U,action:e.literal(`register`),topics:co.refine(e=>e.reset||e.improvement,`subscription_topic_required`),locale:so,registration:uo}),e.strictObject({...U,action:e.literal(`set_topics`),topics:co}),e.strictObject({...U,action:e.literal(`set_locale`),locale:so}),e.strictObject({...U,action:e.literal(`restore`),registration:uo}),e.strictObject({...U,action:e.literal(`retry`)}),e.strictObject({...U,action:e.literal(`cancel`)})]),mo=e.strictObject({operationId:oo.optional(),expectedRevision:ao.optional()}).refine(e=>e.operationId===void 0==(e.expectedRevision===void 0),`subscription_operation_reference_incomplete`),ho=e.strictObject({code:e.enum([`invalid_request`,`identity_unavailable`,`origin_not_allowed`,`rate_limited`,`revision_conflict`,`operation_conflict`,`registration_conflict`,`dependency_unavailable`,`provider_rejected`,`provider_rate_limited`,`provider_unavailable`,`provider_timeout`,`internal_error`]),operationId:oo.optional(),correlationId:e.uuid(),stage:e.string().min(1).max(128),saveOutcome:e.enum([`not_saved`,`unknown`]),reasonSummary:e.string().min(1).max(2048),retryable:e.boolean(),cause:e.record(e.string(),e.unknown())}),go=e.strictObject({id:oo,state:e.enum([`pending`,`applied`,`rejected`,`unknown`,`superseded`,`not_found`]),error:ho.optional()}),_o=e.strictObject({topicSettings:e.strictObject({state:e.enum([`initial`,`saved`]),revision:ao,topics:co,locale:so.nullable()}),registrationState:e.enum([`none`,`ready`,`invalid`,`changing`]),registrationKey:e.string().regex(/^[a-f0-9]{64}$/).nullable(),manualRetryRequired:e.boolean(),operation:go.nullable()});function vo(e,t){return{topics:t.action===`register`||t.action===`set_topics`?t.topics:e.topics,locale:t.action===`register`||t.action===`set_locale`?t.locale:e.locale}}const yo=e.strictObject({data:_o}),bo=e.strictObject({error:ho});function xo(e){return{topicSettings:{state:`initial`,revision:e,topics:{reset:!0,improvement:!1},locale:null},registrationState:`none`,registrationKey:null,manualRetryRequired:!1,operation:null}}const So=co.extend({clue:e.boolean().default(!1)}),[Co,wo,...To]=po.options,Eo=e.discriminatedUnion(`action`,[Co.extend({topics:So.refine(e=>Object.values(e).some(Boolean),`subscription_topic_required`)}),wo.extend({topics:So}),...To]),Do=_o.extend({topicSettings:_o.shape.topicSettings.extend({topics:So})}),Oo=e.strictObject({data:Do});function ko(e){return Do.parse(xo(e))}function Ao(e){let{clue:t,...n}=e.topicSettings.topics;return _o.parse({...e,topicSettings:{...e.topicSettings,topics:n}})}function jo(e,t){return e.action!==`register`&&e.action!==`set_topics`?e:{...e,topics:{...e.topics,clue:e.action!==`register`&&(e.topics.reset||e.topics.improvement)&&t.clue}}}const Mo=20,No=2*1024*1024,Po=`/api/v1/improvements`,Fo=e.string().min(1).max(1024),[Io]=fa.shape.unassignedEntries.element.options,Lo=Io.safeExtend({date:e.iso.date().refine(e=>e>Pa.endDate,`improvement_must_follow_campaign`)}),Ro=e.strictObject({}),zo=e.strictObject({challengeEnded:e.boolean(),observedAt:e.iso.datetime()}),Bo=e.strictObject({cursor:Fo.nullable(),limit:e.literal(20)}),Vo=zo.extend({entries:e.array(Lo).max(20),nextCursor:Fo.nullable()}).superRefine((e,t)=>{new Set(e.entries.map(e=>e.eventId)).size!==e.entries.length&&t.addIssue({code:`custom`,path:[`entries`],message:`Duplicate improvement identity`})}),Ho=e.strictObject({eventIds:e.array(P).min(1).max(128)}),Uo=e.strictObject({eventIds:e.array(P).max(128)}),Wo=e.strictObject({error:e.strictObject({code:e.enum([`invalid_request`,`dependency_unavailable`,`internal_error`]),message:e.string(),requestId:e.uuid(),operation:e.string(),stage:e.string(),cause:e.record(e.string(),e.unknown())})}),Go=`/tibo-source/v1/latest.json`,Ko=512*1024,qo=e.iso.datetime({offset:!0}),Jo=x.shape.noticeTimeline.element,Yo=e.strictObject({contractVersion:e.literal(1),observedAt:qo,check:e.strictObject({checkedAt:qo,freshUntil:qo,active:e.boolean()}).nullable(),latestPost:e.strictObject({authoredAt:qo,sourceUrl:Jo.shape.sourceUrl,sourceText:e.string(),sourceTranslations:Xr,resetRelevance:e.enum([`related`,`unrelated`,`unknown`])}).nullable()});async function Xo(e){let t=e.body?.getReader();if(t===void 0)throw Error(`tibo_source_status_body_missing`,{cause:{status:e.status}});let n=[],r=0;try{for(;;){let i=await t.read();if(i.done)break;if(r+=i.value.byteLength,r>524288)throw Error(`tibo_source_status_too_large`,{cause:{status:e.status,bytes:r}});n.push(i.value)}}finally{try{await t.cancel()}catch{}t.releaseLock()}let i=new Uint8Array(r),a=0;for(let e of n)i.set(e,a),a+=e.byteLength;let o=new TextDecoder(`utf-8`,{fatal:!0}).decode(i);if(!e.ok)throw Error(`tibo_source_status_http_error`,{cause:{status:e.status,upstream:o.slice(0,4e3)}});return Yo.parse(JSON.parse(o))}const Zo=`/reset-clue/v1/latest.json`,Qo=4320*60*1e3,$o=i.exportUtf8Bytes,es=L.shape.noticeTimeline.element.pick({authoredAt:!0,sourceUrl:!0,sourceText:!0,sourceTranslations:!0,contentCompleteness:!0}).extend({plannedTiming:Re.nullable(),expiresAt:L.shape.noticeTimeline.element.shape.authoredAt}).strict().superRefine((e,t)=>{Date.parse(e.expiresAt)!==Date.parse(e.authoredAt)+2592e5&&t.addIssue({code:`custom`,message:`reset_clue_expiry_mismatch`,path:[`expiresAt`]})}),ts=e.strictObject({contractVersion:e.literal(1),clue:es.nullable()}),ns=e=>ts.parse(e);function rs(e,t){return e.clue!==null&&t.getTime()<Date.parse(e.clue.expiresAt)?e.clue:null}async function is(e){let t=e.body?.getReader();if(t===void 0)throw Error(`reset_clue_body_missing`,{cause:{status:e.status}});let n=[],r=0;try{for(;;){let i=await t.read();if(i.done)break;if(r+=i.value.byteLength,r>$o)throw Error(`reset_clue_too_large`,{cause:{status:e.status,bytes:r}});n.push(i.value)}}finally{try{await t.cancel()}catch{}t.releaseLock()}let i=new Uint8Array(r),a=0;for(let e of n)i.set(e,a),a+=e.byteLength;let o=new TextDecoder(`utf-8`,{fatal:!0}).decode(i);if(!e.ok)throw Error(`reset_clue_http_error`,{cause:{status:e.status,upstream:o.slice(0,4e3)}});return ns(JSON.parse(o))}const W=e.enum(Ea),G=e.string().regex(/^\d{4}-(?:0[1-9]|1[0-2])$/),K=e.string().trim().min(1),q=e.url({protocol:/^https$/}),J=e.discriminatedUnion(`kind`,[e.strictObject({kind:e.literal(`instant`),at:e.iso.datetime()}),e.strictObject({kind:e.literal(`date`),date:e.iso.date()})]),as=e.strictObject({operation:K,stage:K,cause:qt});function os(t){return e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`ready`),value:t}),e.strictObject({state:e.literal(`pending`)}),e.strictObject({state:e.literal(`failed`),failure:as})])}function Y(e,t){return e.superRefine((e,n)=>{new TextEncoder().encode(JSON.stringify(e)).byteLength>t&&n.addIssue({code:`custom`,message:`publication_utf8_size_limit_exceeded`})})}async function X(e,t,n,r){let i=e.body?.getReader();if(i===void 0)throw Error(`${t}_body_missing`,{cause:{operation:t,stage:`read`,status:e.status}});let a=[],o=0;try{for(;;){let e=await i.read();if(e.done)break;if(o+=e.value.byteLength,o>n)throw Error(`publication_utf8_size_limit_exceeded`);a.push(e.value)}}catch(n){throw Error(`${t}_read_failed`,{cause:{operation:t,stage:`read`,status:e.status,bytes:o,cause:n}})}finally{try{await i.cancel()}catch{}i.releaseLock()}let s=new Uint8Array(o),c=0;for(let e of a)s.set(e,c),c+=e.byteLength;let l;try{l=new TextDecoder(`utf-8`,{fatal:!0}).decode(s)}catch(n){throw Error(`${t}_decode_failed`,{cause:{operation:t,stage:`decode`,status:e.status,cause:n}})}if(!e.ok)throw Error(`${t}_http_error`,{cause:{operation:t,stage:`http`,status:e.status,upstream:l.slice(0,4e3)}});try{return r.parse(JSON.parse(l))}catch(n){throw Error(`${t}_parse_failed`,{cause:{operation:t,stage:`parse`,status:e.status,cause:n}})}}const ss=`/codex-releases/v2/directory.json`,cs=128*1024,ls=128*1024,us=256*1024,ds=J,fs={product:e.enum([`app`,`cli`]),version:K,published:J,month:G,revision:K},ps=e.strictObject(fs).superRefine(ms);function ms(e,t){let n=V.safeParse({product:e.product,version:e.version});if(!n.success)for(let e of n.error.issues)t.addIssue({...e});e.product===`cli`!=(e.published.kind===`instant`)&&t.addIssue({code:`custom`,path:[`published`],message:`product_date_precision_mismatch`}),(e.published.kind===`instant`?e.published.at:e.published.date).slice(0,7)!==e.month&&t.addIssue({code:`custom`,path:[`month`],message:`published_month_mismatch`})}function hs(e,t){let n=new Set,r=1/0;for(let[i,a]of e.entries()){let e=`${a.product}/${a.version}`;n.has(e)&&t.addIssue({code:`custom`,path:[`releases`,i],message:`duplicate_release_identity`}),n.add(e);let o=Date.parse(a.published.kind===`instant`?a.published.at:`${a.published.date}T00:00:00Z`);o>r&&t.addIssue({code:`custom`,path:[`releases`,i],message:`release_order_mismatch`}),r=o}}const gs=Y(e.strictObject({contractVersion:e.literal(2),releases:e.array(ps),latest:e.strictObject({app:e.string().nullable(),cli:e.string().nullable()})}).superRefine((e,t)=>{hs(e.releases,t);for(let n of[`app`,`cli`]){let r=e.releases.find(e=>e.product===n)?.version??null;e.latest[n]!==r&&t.addIssue({code:`custom`,path:[`latest`,n],message:`latest_release_mismatch`})}}),cs),_s=e.strictObject({state:e.literal(`not_applicable`),reason:e.literal(`no_curated_notes`)}),vs=e.union([os(e.strictObject({locale:W,points:e.array(K).min(1).max(5)})),_s]),ys=e.strictObject({...fs,source:e.strictObject({kind:e.enum([`github`,`official`]),url:q}),summary:vs,notesCount:e.number().int().nonnegative()}).superRefine((e,t)=>{ms(e,t),e.product===`cli`!=(e.source.kind===`github`)&&t.addIssue({code:`custom`,path:[`source`,`kind`],message:`product_source_mismatch`}),e.notesCount===0!=(e.summary.state===`not_applicable`)&&t.addIssue({code:`custom`,path:[`summary`],message:`curated_notes_summary_state_mismatch`})}),bs=Y(e.strictObject({contractVersion:e.literal(2),locale:W,month:G,releases:e.array(ys)}).superRefine((e,t)=>{hs(e.releases,t);for(let[n,r]of e.releases.entries())r.month!==e.month&&t.addIssue({code:`custom`,path:[`releases`,n,`month`],message:`file_month_mismatch`}),r.summary.state===`ready`&&r.summary.value.locale!==e.locale&&r.summary.value.locale!==`en`&&t.addIssue({code:`custom`,path:[`releases`,n,`summary`,`value`,`locale`],message:`summary_locale_mismatch`})}),ls),xs=e.array(e.strictObject({title:K.nullable(),items:e.array(e.strictObject({text:K,refs:K.nullable()})).min(1)})).min(1),Ss=Y(e.strictObject({contractVersion:e.literal(2),product:e.enum([`app`,`cli`]),version:K,revision:K,locale:W,original:e.array(xs.element),translation:e.union([os(xs),_s]).nullable()}).superRefine((e,t)=>{let n=V.safeParse({product:e.product,version:e.version});if(!n.success)for(let e of n.error.issues)t.addIssue({...e});if(e.locale===`en`!=(e.translation===null)&&t.addIssue({code:`custom`,path:[`translation`],message:`translation_locale_mismatch`}),e.locale!==`en`&&e.original.length===0!=(e.translation?.state===`not_applicable`)&&t.addIssue({code:`custom`,path:[`translation`],message:`curated_notes_translation_state_mismatch`}),e.translation?.state===`ready`){let n=e.translation.value;(n.length!==e.original.length||e.original.some((e,t)=>{let r=n.at(t);return r===void 0||e.title===null!=(r.title===null)||e.items.length!==r.items.length||e.items.some((e,t)=>e.refs!==r.items.at(t)?.refs)}))&&t.addIssue({code:`custom`,path:[`translation`],message:`translation_structure_mismatch`})}}),us),Cs=e=>gs.parse(e),ws=e=>bs.parse(e),Ts=e=>Ss.parse(e),Es=e=>X(e,`codex_release_directory`,cs,gs),Ds=e=>X(e,`codex_release_month`,ls,bs),Os=e=>X(e,`codex_release_notes`,us,Ss);function ks(e,t){return`/codex-releases/v2/${W.parse(e)}/${G.parse(t)}.json`}function As(e,t,n){let r=V.parse({product:t,version:n});return`/codex-releases/v2/${W.parse(e)}/notes/${r.product}/${r.version}.json`}const js=128*1024;function Z(t){return e.discriminatedUnion(`state`,[e.strictObject({state:e.literal(`known`),value:t,source:q}),e.strictObject({state:e.literal(`unavailable`),reason:e.enum([`not_announced`,`not_listed`]),source:q.nullable()})])}const Ms=e.strictObject({input:K,cached:K,output:K}),Ns=e.strictObject({modelId:H,name:K,group:e.enum([`current`,`retired`]),status:e.enum([`available`,`retiring`,`retired`]),launched:Z(J),chatgptRetirement:Z(J),apiRetirement:Z(J),credits:Z(Ms),apiPrice:Z(Ms),multiple:e.string().regex(/^(?:0|[1-9]\d*)(?:\.\d+)?$/).refine(e=>Number.isFinite(Number(e))&&Number(e)>0).nullable(),plans:Z(e.array(K).min(1)),surfaces:Z(e.array(K).min(1)),about:os(e.strictObject({locale:W,paragraphs:e.array(K).min(1)})),sources:e.array(e.strictObject({label:K,url:q})).min(1)}).superRefine((e,t)=>{e.status===`retired`!=(e.group===`retired`)&&t.addIssue({code:`custom`,path:[`group`],message:`model_group_status_mismatch`}),e.status===`retiring`&&e.chatgptRetirement.state!==`known`&&t.addIssue({code:`custom`,path:[`chatgptRetirement`],message:`retiring_model_requires_announced_date`})}),Ps=Y(e.strictObject({contractVersion:e.literal(1),locale:W,models:e.array(Ns),multipleBase:e.strictObject({modelId:H,name:K}).nullable(),upcomingRetirement:e.strictObject({names:K,modelIds:e.array(H).min(1),surface:e.enum([`api`,`chatgpt`]),at:J}).nullable()}).superRefine((e,t)=>{let n=new Set;for(let[r,i]of e.models.entries())n.has(i.modelId)&&t.addIssue({code:`custom`,path:[`models`,r,`modelId`],message:`duplicate_model_identity`}),n.add(i.modelId),i.about.state===`ready`&&i.about.value.locale!==e.locale&&i.about.value.locale!==`en`&&t.addIssue({code:`custom`,path:[`models`,r,`about`,`value`,`locale`],message:`model_description_locale_mismatch`}),i.multiple!==null&&(e.multipleBase===null||i.credits.state!==`known`)&&t.addIssue({code:`custom`,path:[`models`,r,`multiple`],message:`multiple_requires_base_and_credits`});if(e.multipleBase!==null){let n=e.models.find(t=>t.modelId===e.multipleBase?.modelId);(n===void 0||n.group!==`current`||n.credits.state!==`known`||n.multiple!==`1`||n.name!==e.multipleBase.name)&&t.addIssue({code:`custom`,path:[`multipleBase`],message:`multiple_base_mismatch`})}let r=e.upcomingRetirement;if(r!==null){new Set(r.modelIds).size!==r.modelIds.length&&t.addIssue({code:`custom`,path:[`upcomingRetirement`,`modelIds`],message:`duplicate_retirement_model`});for(let n of r.modelIds){let i=e.models.find(e=>e.modelId===n),a=r.surface===`api`?i?.apiRetirement:i?.chatgptRetirement;(a?.state!==`known`||JSON.stringify(a.value)!==JSON.stringify(r.at))&&t.addIssue({code:`custom`,path:[`upcomingRetirement`],message:`retirement_model_date_mismatch`})}}}),js),Fs=e=>Ps.parse(e),Is=e=>X(e,`codex_models`,js,Ps),Ls=e=>`/codex-models/v1/${W.parse(e)}.json`,Rs=256*1024,zs=512*1024,Bs=3600*1e3,Q=e.string().regex(/^[a-z][a-z0-9-]{0,63}$/),Vs=e.enum([`x`,`hn`,`github`,`v2ex`,`reddit`,`linuxdo`]),Hs=e.enum([`debate`,`tip`,`showcase`,`comparison`,`news`]),$=e.string().trim().min(1),Us=e.strictObject({id:$,topic:Q,platform:Vs,kind:Hs,url:q,author:e.strictObject({name:$,handle:$.nullable()}),venue:$.nullable(),title:$.nullable(),summary:e.strictObject({zh:$.max(600),en:$.max(600)}),authoredAt:e.iso.datetime(),heat:e.strictObject({metrics:e.array(e.strictObject({kind:e.enum([`likes`,`points`,`comments`,`reactions`,`replies`]),value:e.number().int().nonnegative()})).min(1),ratio:e.number().finite().nonnegative()}).nullable()}).superRefine((e,t)=>{(!e.id.startsWith(`${e.platform}:`)||e.id.length<=e.platform.length+1)&&t.addIssue({code:`custom`,path:[`id`],message:`entry_platform_identity_mismatch`})});function Ws(e,t){let n=new Set,r=1/0;for(let[i,a]of e.entries.entries()){n.has(a.id)&&t.addIssue({code:`custom`,path:[`entries`,i],message:`duplicate_entry`}),n.add(a.id),a.topic!==e.topic&&t.addIssue({code:`custom`,path:[`entries`,i],message:`entry_topic_mismatch`});let o=Date.parse(a.authoredAt);o>r&&t.addIssue({code:`custom`,path:[`entries`,i],message:`entry_order_mismatch`}),r=o}}const Gs=e.strictObject({id:$,platform:Vs,label:$,lastSuccessAt:e.iso.datetime().nullable()}),Ks=Y(e.strictObject({contractVersion:e.literal(1),topic:Q,generatedAt:e.iso.datetime(),overview:e.strictObject({weekCount:e.number().int().nonnegative(),debateCount:e.number().int().nonnegative(),hottestId:$.nullable()}),sources:e.array(Gs),coverage:e.strictObject({from:e.iso.date(),months:e.array(G)}),entries:e.array(Us)}).superRefine((e,t)=>{Ws(e,t);let n=Date.parse(e.generatedAt),r=e.entries.filter(e=>Date.parse(e.authoredAt)>=n-7*864e5),i=[...r].sort(ec).at(0)?.id??null;(e.overview.weekCount!==r.length||e.overview.debateCount!==r.filter(e=>e.kind===`debate`).length||e.overview.hottestId!==i)&&t.addIssue({code:`custom`,path:[`overview`],message:`overview_entries_mismatch`}),new Set(e.sources.map(e=>e.id)).size!==e.sources.length&&t.addIssue({code:`custom`,path:[`sources`],message:`duplicate_source`}),(new Set(e.coverage.months).size!==e.coverage.months.length||e.coverage.months.some((t,n)=>n>0&&t>=e.coverage.months.at(n-1)))&&t.addIssue({code:`custom`,path:[`coverage`],message:`coverage_order_mismatch`});for(let r of e.entries){let i=Date.parse(r.authoredAt);(i>n||i<n-30*864e5||!e.coverage.months.includes(r.authoredAt.slice(0,7))||r.authoredAt.slice(0,10)<e.coverage.from)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_coverage_mismatch`})}}),Rs),qs=Y(e.strictObject({contractVersion:e.literal(1),topic:Q,month:G,entries:e.array(Us)}).superRefine((e,t)=>{Ws(e,t),e.entries.some(t=>t.authoredAt.slice(0,7)!==e.month)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_month_mismatch`})}),zs),Js=e=>`/community-trending/v1/${Q.parse(e)}/latest.json`,Ys=(e,t)=>`/community-trending/v1/${Q.parse(e)}/${G.parse(t)}.json`,Xs=e=>Ks.parse(e),Zs=e=>qs.parse(e),Qs=e=>X(e,`community_trending_latest`,Rs,Ks),$s=e=>X(e,`community_trending_month`,zs,qs);function ec(e,t){return e.heat===null&&t.heat!==null?1:e.heat!==null&&t.heat===null?-1:(t.heat?.ratio??0)-(e.heat?.ratio??0)||t.authoredAt.localeCompare(e.authoredAt)||e.id.localeCompare(t.id)}const tc=(e,t)=>e.summary[t===`zh-Hans`?`zh`:`en`];export{sn as RadarResetSourceContractErrorV2,rs as activeRadarResetClue,ec as compareRadarCommunityTrendingEntries,Qa as compareRadarNotificationTasks,Ue as compareRadarResetActionDetailsV1,C as compareRadarResetUtcTimestampsV1,Ya as createRadarBrowserNotificationProjection,Ra as createRadarCodexProgressCalendar,Xa as createRadarNotificationProjection,On as createRadarResetSourceErrorEnvelopeV2,Fr as encodeRadarActivityFile,Lr as encodeRadarActivityFileV2,ya as encodeRadarActivityFileV3,gn as encodeRadarResetDetailMultipartV2,Ir as encodeRadarTitledActivityFile,lt as formatRadarResetPositiveDecimalV2,ct as formatRadarResetUInt64DecimalV2,xo as initialRadarBrowserSubscription,ko as initialRadarBrowserSubscriptionV2,Fs as parseRadarCodexModels,Ca as parseRadarCodexProgressChangeV3,wa as parseRadarCodexProgressChangesV3,Mn as parseRadarCodexProgressV1,Vn as parseRadarCodexProgressV2,Xn as parseRadarCodexProgressV3,nr as parseRadarCodexProgressV4,ia as parseRadarCodexProgressV5,Cs as parseRadarCodexReleaseDirectory,ws as parseRadarCodexReleaseMonth,Ts as parseRadarCodexReleaseNotes,Xs as parseRadarCommunityTrendingLatest,Zs as parseRadarCommunityTrendingMonth,Ge as parseRadarResetActionDetailV1,si as parseRadarResetActionDetailV2,Si as parseRadarResetActionDetailV3,St as parseRadarResetActionSummaryV2,We as parseRadarResetAnalysisV1,ns as parseRadarResetClueSnapshot,xn as parseRadarResetDetailMultipartV2,Ke as parseRadarResetExportV1,li as parseRadarResetExportV2,bi as parseRadarResetExportV3,qe as parseRadarResetPendingActionV1,ci as parseRadarResetPendingActionV2,ot as parseRadarResetPositiveDecimalV2,wt as parseRadarResetPublicationHomeFactsV2,on as parseRadarResetPublicationRevisionAvailableV2,Qt as parseRadarResetReadActionsRequestV2,nn as parseRadarResetReadActionsSuccessV2,$t as parseRadarResetReadChangesRequestV2,rn as parseRadarResetReadChangesSuccessV2,en as parseRadarResetReadDetailBatchRequestV2,Zt as parseRadarResetReadHeadRequestV2,tn as parseRadarResetReadHeadSuccessV2,ae as parseRadarResetSnapshotAvailableV1,an as parseRadarResetSourceErrorEnvelopeV2,at as parseRadarResetUInt64DecimalV2,vo as projectRadarBrowserSubscriptionSelection,Ao as projectRadarBrowserSubscriptionV1,ui as projectRadarResetExportV1FromV2,xi as projectRadarResetExportV3FromV2,Je as projectRadarResetPrimarySourceV1,Di as projectRadarResetPublicActionToV2,P as radarActivityEventIdSchema,I as radarActivityFileSchema,cr as radarActivityFileUrl,jr as radarActivityFileV2Schema,lr as radarActivityFileV2Url,_a as radarActivityFileV3Schema,aa as radarActivityFileV3Url,F as radarActivityMaxBytes,pr as radarActivityProgressSchema,Or as radarActivityProgressV2Schema,fa as radarActivityProgressV3Schema,mr as radarActivityReactionCountsSchema,sr as radarActivityReactionIdSchema,N as radarActivityReactionIds,ja as radarBrowserNotificationPageUrl,Ja as radarBrowserNotificationProjectionSchema,Wa as radarBrowserNotificationTargetUrlSchema,qa as radarBrowserNotificationTopicSchema,uo as radarBrowserRegistrationSchema,bo as radarBrowserSubscriptionErrorRes,ho as radarBrowserSubscriptionFailureSchema,go as radarBrowserSubscriptionOperationSchema,mo as radarBrowserSubscriptionReadReq,yo as radarBrowserSubscriptionRes,po as radarBrowserSubscriptionSaveReq,Eo as radarBrowserSubscriptionSaveV2Req,Oo as radarBrowserSubscriptionV2Res,_o as radarBrowserSubscriptionViewSchema,Do as radarBrowserSubscriptionViewV2Schema,io as radarBrowserSubscriptionsPath,co as radarBrowserTopicsSchema,So as radarBrowserTopicsV2Schema,Wr as radarCodexGuessChoiceSchema,Yr as radarCodexGuessErrorSchema,Gr as radarCodexGuessSaveReqSchema,Jr as radarCodexGuessViewSchema,H as radarCodexModelIdSchema,Na as radarCodexModelUrl,js as radarCodexModelsMaxBytes,Ls as radarCodexModelsPath,Ps as radarCodexModelsSchema,Pa as radarCodexProgressCalendar,Rr as radarCodexProgressChangeSchema,Br as radarCodexProgressChangeV2Schema,xa as radarCodexProgressChangeV3Schema,zr as radarCodexProgressChangesV1Schema,Vr as radarCodexProgressChangesV2Schema,Sa as radarCodexProgressChangesV3Schema,A as radarCodexProgressEntrySchema,Un as radarCodexProgressEntryV3Schema,Qi as radarCodexProgressEntryV5Schema,Xi as radarCodexProgressImprovementV5Schema,Ki as radarCodexProgressPostRoleV5Schema,qi as radarCodexProgressPostV5Schema,Ji as radarCodexProgressPostsV5Schema,Zi as radarCodexProgressResetEntryV5Schema,Yn as radarCodexProgressScore,M as radarCodexProgressTitleV3Schema,j as radarCodexProgressV1Schema,Pn as radarCodexProgressV2MaxBytes,Bn as radarCodexProgressV2Schema,Hn as radarCodexProgressV3MaxBytes,Jn as radarCodexProgressV3Schema,Zn as radarCodexProgressV4MaxBytes,tr as radarCodexProgressV4Schema,Yi as radarCodexProgressV5MaxBytes,ra as radarCodexProgressV5Schema,cs as radarCodexReleaseDirectoryMaxBytes,ss as radarCodexReleaseDirectoryPath,gs as radarCodexReleaseDirectorySchema,V as radarCodexReleaseIdentitySchema,ls as radarCodexReleaseMonthMaxBytes,ks as radarCodexReleaseMonthPath,bs as radarCodexReleaseMonthSchema,us as radarCodexReleaseNotesMaxBytes,As as radarCodexReleaseNotesPath,Ss as radarCodexReleaseNotesSchema,xs as radarCodexReleaseSectionsSchema,Ma as radarCodexReleaseUrl,ds as radarCodexTimePointSchema,Us as radarCommunityTrendingEntrySchema,Hs as radarCommunityTrendingKindSchema,Rs as radarCommunityTrendingLatestMaxBytes,Js as radarCommunityTrendingLatestPath,Ks as radarCommunityTrendingLatestSchema,zs as radarCommunityTrendingMonthMaxBytes,Ys as radarCommunityTrendingMonthPath,qs as radarCommunityTrendingMonthSchema,Vs as radarCommunityTrendingPlatformSchema,Gs as radarCommunityTrendingSourceSchema,Bs as radarCommunityTrendingSourceStaleMs,tc as radarCommunityTrendingSummary,Q as radarCommunityTrendingTopicSchema,Po as radarImprovementColumnPath,Ho as radarImprovementEligibilityReq,Uo as radarImprovementEligibilityRes,Lo as radarImprovementEntrySchema,Wo as radarImprovementErrorRes,Ro as radarImprovementHeadReq,zo as radarImprovementHeadRes,No as radarImprovementPageMaxBytes,Bo as radarImprovementPageReq,Vo as radarImprovementPageRes,Mo as radarImprovementPageSize,Ka as radarNotificationProjectionSchema,Ga as radarNotificationTargetSchema,eo as radarNotificationTaskPageSize,Za as radarNotificationTaskSchema,$a as radarNotificationTasksPath,no as radarNotificationTasksReq,ro as radarNotificationTasksRes,za as radarNotificationTopicSchema,Ba as radarNotificationTopicsSchema,x as radarResetActionDetailV1Schema,L as radarResetActionDetailV2Schema,di as radarResetActionDetailV3Schema,kt as radarResetActionItemV2Schema,Qe as radarResetActionPageMaxBytesV2,Ze as radarResetActionPageMaxItemsV2,xt as radarResetActionSummaryV2Schema,Dt as radarResetActiveActionItemV2Schema,Ne as radarResetAnalysisV1Schema,r as radarResetAnalyzerContractVersionV1,c as radarResetAudienceValues,Lt as radarResetChangeCoverageV2Schema,et as radarResetChangePageMaxBytesV2,$e as radarResetChangePageMaxItemsV2,Qo as radarResetClueLifetimeMs,$o as radarResetClueMaxBytes,Zo as radarResetCluePath,es as radarResetClueSchema,ts as radarResetClueSnapshotSchema,n as radarResetContractVersionV1,Ye as radarResetContractVersionV2,nt as radarResetDetailBatchMaxBytesV2,tt as radarResetDetailBatchMaxChunksV2,Tt as radarResetDetailChunkReferenceV2Schema,Nt as radarResetDetailChunkRequestV2Schema,Et as radarResetDetailManifestV2Schema,o as radarResetEffectValues,He as radarResetExportV1Schema,oi as radarResetExportV2Schema,vi as radarResetExportV3Schema,$r as radarResetKindNoticeV2Schema,Ui as radarResetManagementActionSchema,Li as radarResetManagementOperationSchema,Wi as radarResetManagementResSchema,Hi as radarResetManualApplyReqSchema,Ii as radarResetManualCopySchema,Ri as radarResetManualDraftSchema,Bi as radarResetManualDraftSeedSchema,zi as radarResetManualPreviewReqSchema,Vi as radarResetManualPreviewResSchema,Gi as radarResetManualResultResSchema,Le as radarResetNoticeKindValues,S as radarResetPendingActionV1Schema,ai as radarResetPendingActionV2Schema,l as radarResetPlanValues,w as radarResetPositiveDecimalV2Schema,s as radarResetProductValues,ki as radarResetPublicActionV1Schema,i as radarResetPublicDataLimits,E as radarResetPublicIdV2Schema,Ci as radarResetPublicRecordsCorePath,Ni as radarResetPublicRecordsV1Schema,Ct as radarResetPublicationHomeFactsV2Schema,Xt as radarResetPublicationRevisionAvailableV2Schema,Re as radarResetPublicationTimingSchema,zt as radarResetReadActionsDataV2Schema,jt as radarResetReadActionsRequestV2Schema,Ut as radarResetReadActionsSuccessV2Schema,Bt as radarResetReadChangesDataV2Schema,Mt as radarResetReadChangesRequestV2Schema,Wt as radarResetReadChangesSuccessV2Schema,Pt as radarResetReadDetailBatchRequestV2Schema,Rt as radarResetReadHeadDataV2Schema,At as radarResetReadHeadRequestV2Schema,Ht as radarResetReadHeadSuccessV2Schema,d as radarResetReasonBasisValues,u as radarResetReasonCategoryValues,qt as radarResetSafeCauseSnapshotV2Schema,a as radarResetSeriesValues,D as radarResetSha256V2Schema,ie as radarResetSnapshotAvailableV1Schema,It as radarResetSourceChangeV2Schema,Gt as radarResetSourceErrorCodeValuesV2,Yt as radarResetSourceErrorEnvelopeV2Schema,Dn as radarResetSourceErrorHttpStatusV2,En as radarResetSourceErrorIsRetryableV2,Jt as radarResetSourceErrorV2Schema,Xe as radarResetSourceMaxRpcCallsV2,Xr as radarResetSourceTranslationsSchema,yi as radarResetStatisticsResponseV3Schema,_i as radarResetStatisticsV1Schema,it as radarResetUInt64DecimalV2Schema,st as radarResetUInt64DecimalV2ToBigInt,Ai as radarResetUnexecutedActionV1Schema,T as radarResetUtcTimestampV2Schema,Ot as radarResetWithdrawnActionItemV2Schema,ji as radarResetWithdrawnActionV1Schema,Ko as radarTiboSourceStatusMaxBytes,Go as radarTiboSourceStatusPath,Yo as radarTiboSourceStatusSchema,Tr as radarTitledActivityFileSchema,Sr as radarTitledActivityProgressSchema,Oa as radarWebsiteLegacyChinesePrefix,Da as radarWebsiteLocalePrefixes,B as radarWebsiteLocaleSlugs,Ea as radarWebsiteLocales,Ta as radarWebsiteOrigin,ka as radarWebsitePagePaths,Aa as radarWebsitePageUrl,Mr as readRadarActivityFile,Pr as readRadarActivityFileV2,va as readRadarActivityFileV3,Is as readRadarCodexModels,Es as readRadarCodexReleaseDirectory,Ds as readRadarCodexReleaseMonth,Os as readRadarCodexReleaseNotes,Qs as readRadarCommunityTrendingLatest,$s as readRadarCommunityTrendingMonth,is as readRadarResetClueSnapshot,Xo as readRadarTiboSourceStatus,Nr as readRadarTitledActivityFile,fo as redactRadarBrowserRegistrationReferences,Tn as toSafeCauseSnapshotV2,jo as upgradeRadarBrowserSubscriptionCommandV1};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@closerepo/radar-contracts",
3
- "version": "3.0.0",
3
+ "version": "4.0.0",
4
4
  "type": "module",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {