@closerepo/radar-contracts 13.3.0 → 13.4.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
@@ -7355,6 +7355,18 @@ declare const radarWebsitePagePaths: {
7355
7355
  readonly models: "/codex/models";
7356
7356
  readonly dynamics: "/news";
7357
7357
  };
7358
+ /** Release tools have independent public directories and page roots. */
7359
+ declare const radarReleaseToolSchema: z.ZodEnum<{
7360
+ codex: "codex";
7361
+ claude: "claude";
7362
+ antigravity: "antigravity";
7363
+ }>;
7364
+ type RadarReleaseTool = z.infer<typeof radarReleaseToolSchema>;
7365
+ declare const radarReleaseProductSchema: z.ZodEnum<{
7366
+ app: "app";
7367
+ cli: "cli";
7368
+ }>;
7369
+ type RadarReleaseProduct = z.infer<typeof radarReleaseProductSchema>;
7358
7370
  /** Product and version together identify a release; a version alone is not unique. */
7359
7371
  declare const radarCodexReleaseIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7360
7372
  product: z.ZodLiteral<"cli">;
@@ -7363,6 +7375,28 @@ declare const radarCodexReleaseIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObj
7363
7375
  product: z.ZodLiteral<"app">;
7364
7376
  version: z.ZodString;
7365
7377
  }, z.core.$strict>], "product">;
7378
+ declare const radarClaudeReleaseIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7379
+ product: z.ZodLiteral<"cli">;
7380
+ version: z.ZodString;
7381
+ }, z.core.$strict>], "product">;
7382
+ declare const radarAntigravityReleaseIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7383
+ product: z.ZodLiteral<"cli">;
7384
+ version: z.ZodString;
7385
+ }, z.core.$strict>, z.ZodObject<{
7386
+ product: z.ZodLiteral<"app">;
7387
+ version: z.ZodString;
7388
+ }, z.core.$strict>], "product">;
7389
+ /** Returns the single source of truth for each tool's product/version identity. */
7390
+ declare function radarReleaseIdentitySchema(tool: RadarReleaseTool): z.ZodDiscriminatedUnion<[z.ZodObject<{
7391
+ product: z.ZodLiteral<"cli">;
7392
+ version: z.ZodString;
7393
+ }, z.core.$strict>, z.ZodObject<{
7394
+ product: z.ZodLiteral<"app">;
7395
+ version: z.ZodString;
7396
+ }, z.core.$strict>], "product"> | z.ZodDiscriminatedUnion<[z.ZodObject<{
7397
+ product: z.ZodLiteral<"cli">;
7398
+ version: z.ZodString;
7399
+ }, z.core.$strict>], "product">;
7366
7400
  /** IDs are single path segments; dot navigation is never a model identity. */
7367
7401
  declare const radarCodexModelIdSchema: z.ZodString;
7368
7402
  /** Produces a canonical existing page; callers provide both the page and language explicitly. */
@@ -7370,7 +7404,9 @@ declare function radarWebsitePageUrl(page: keyof typeof radarWebsitePagePaths, l
7370
7404
  /** Keeps browser push targets valid for installed workers; the website redirects the legacy Chinese URL. */
7371
7405
  declare function radarBrowserNotificationPageUrl(page: "reset" | "improvement", locale: RadarWebsiteLocale): string;
7372
7406
  /** Builds a shareable release URL after validating the product-specific version. */
7373
- declare function radarCodexReleaseUrl(product: "app" | "cli", version: string, locale: RadarWebsiteLocale): string;
7407
+ declare const radarCodexReleaseUrl: (product: RadarReleaseProduct, version: string, locale: RadarWebsiteLocale) => string;
7408
+ /** Each tool's release pages sit under its own tool root, mirroring the Codex changelog layout. */
7409
+ declare function radarReleaseUrl(tool: RadarReleaseTool, product: RadarReleaseProduct, version: string, locale: RadarWebsiteLocale): string;
7374
7410
  /** Builds a model detail URL without allowing query, fragment or path injection. */
7375
7411
  declare function radarCodexModelUrl(modelId: string, locale: RadarWebsiteLocale): string;
7376
7412
  //#endregion
@@ -8282,8 +8318,6 @@ declare function activeRadarResetClue(snapshot: RadarResetClueSnapshot, now: Dat
8282
8318
  declare function readRadarResetClueSnapshot(response: Response): Promise<RadarResetClueSnapshot>;
8283
8319
  //#endregion
8284
8320
  //#region src/codex-releases.d.ts
8285
- /** Fixed public layout; publishers and readers must import these paths instead of reconstructing them. */
8286
- declare const radarCodexReleaseDirectoryPath = "/codex-releases/v2/directory.json";
8287
8321
  declare const radarCodexReleaseDirectoryMaxBytes: number;
8288
8322
  declare const radarCodexReleaseMonthMaxBytes: number;
8289
8323
  declare const radarCodexReleaseNotesMaxBytes: number;
@@ -8294,12 +8328,460 @@ declare const radarCodexTimePointSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
8294
8328
  kind: z.ZodLiteral<"date">;
8295
8329
  date: z.ZodISODate;
8296
8330
  }, z.core.$strip>], "kind">;
8331
+ declare const radarCodexReleaseSectionsSchema: z.ZodArray<z.ZodObject<{
8332
+ title: z.ZodNullable<z.ZodString>;
8333
+ items: z.ZodArray<z.ZodObject<{
8334
+ text: z.ZodString;
8335
+ refs: z.ZodNullable<z.ZodString>;
8336
+ }, z.core.$strip>>;
8337
+ }, z.core.$strip>>;
8338
+ /** Public file schemas per tool; the tool is identified by the file's path root, not by a field. */
8339
+ declare const radarReleaseSchemas: {
8340
+ readonly codex: {
8341
+ reference: z.ZodObject<{
8342
+ product: z.ZodEnum<{
8343
+ app: "app";
8344
+ cli: "cli";
8345
+ }>;
8346
+ version: z.ZodString;
8347
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8348
+ kind: z.ZodLiteral<"instant">;
8349
+ at: z.ZodISODateTime;
8350
+ }, z.core.$strip>, z.ZodObject<{
8351
+ kind: z.ZodLiteral<"date">;
8352
+ date: z.ZodISODate;
8353
+ }, z.core.$strip>], "kind">;
8354
+ month: z.ZodString;
8355
+ revision: z.ZodString;
8356
+ }, z.core.$strip>;
8357
+ directory: z.ZodObject<{
8358
+ contractVersion: z.ZodLiteral<2>;
8359
+ releases: z.ZodArray<z.ZodObject<{
8360
+ product: z.ZodEnum<{
8361
+ app: "app";
8362
+ cli: "cli";
8363
+ }>;
8364
+ version: z.ZodString;
8365
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8366
+ kind: z.ZodLiteral<"instant">;
8367
+ at: z.ZodISODateTime;
8368
+ }, z.core.$strip>, z.ZodObject<{
8369
+ kind: z.ZodLiteral<"date">;
8370
+ date: z.ZodISODate;
8371
+ }, z.core.$strip>], "kind">;
8372
+ month: z.ZodString;
8373
+ revision: z.ZodString;
8374
+ }, z.core.$strip>>;
8375
+ latest: z.ZodObject<{
8376
+ app: z.ZodNullable<z.ZodString>;
8377
+ cli: z.ZodNullable<z.ZodString>;
8378
+ }, z.core.$strip>;
8379
+ }, z.core.$strip>;
8380
+ month: z.ZodObject<{
8381
+ contractVersion: z.ZodLiteral<2>;
8382
+ locale: z.ZodEnum<{
8383
+ "zh-Hans": "zh-Hans";
8384
+ "zh-Hant": "zh-Hant";
8385
+ ja: "ja";
8386
+ ko: "ko";
8387
+ en: "en";
8388
+ }>;
8389
+ month: z.ZodString;
8390
+ releases: z.ZodArray<z.ZodObject<{
8391
+ source: z.ZodObject<{
8392
+ kind: z.ZodEnum<{
8393
+ github: "github";
8394
+ official: "official";
8395
+ }>;
8396
+ url: z.ZodURL;
8397
+ }, z.core.$strip>;
8398
+ summary: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8399
+ state: z.ZodLiteral<"ready">;
8400
+ value: z.ZodObject<{
8401
+ locale: z.ZodEnum<{
8402
+ "zh-Hans": "zh-Hans";
8403
+ "zh-Hant": "zh-Hant";
8404
+ ja: "ja";
8405
+ ko: "ko";
8406
+ en: "en";
8407
+ }>;
8408
+ points: z.ZodArray<z.ZodString>;
8409
+ }, z.core.$strip>;
8410
+ }, z.core.$strip>, z.ZodObject<{
8411
+ state: z.ZodLiteral<"pending">;
8412
+ }, z.core.$strip>, z.ZodObject<{
8413
+ state: z.ZodLiteral<"failed">;
8414
+ failure: z.ZodObject<{
8415
+ operation: z.ZodString;
8416
+ stage: z.ZodString;
8417
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8418
+ }, z.core.$strip>;
8419
+ }, z.core.$strip>], "state">, z.ZodObject<{
8420
+ state: z.ZodLiteral<"not_applicable">;
8421
+ reason: z.ZodLiteral<"no_curated_notes">;
8422
+ }, z.core.$strip>]>;
8423
+ notesCount: z.ZodNumber;
8424
+ product: z.ZodEnum<{
8425
+ app: "app";
8426
+ cli: "cli";
8427
+ }>;
8428
+ version: z.ZodString;
8429
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8430
+ kind: z.ZodLiteral<"instant">;
8431
+ at: z.ZodISODateTime;
8432
+ }, z.core.$strip>, z.ZodObject<{
8433
+ kind: z.ZodLiteral<"date">;
8434
+ date: z.ZodISODate;
8435
+ }, z.core.$strip>], "kind">;
8436
+ month: z.ZodString;
8437
+ revision: z.ZodString;
8438
+ }, z.core.$strip>>;
8439
+ }, z.core.$strip>;
8440
+ notes: z.ZodObject<{
8441
+ contractVersion: z.ZodLiteral<2>;
8442
+ product: z.ZodEnum<{
8443
+ app: "app";
8444
+ cli: "cli";
8445
+ }>;
8446
+ version: z.ZodString;
8447
+ revision: z.ZodString;
8448
+ locale: z.ZodEnum<{
8449
+ "zh-Hans": "zh-Hans";
8450
+ "zh-Hant": "zh-Hant";
8451
+ ja: "ja";
8452
+ ko: "ko";
8453
+ en: "en";
8454
+ }>;
8455
+ original: z.ZodArray<z.ZodObject<{
8456
+ title: z.ZodNullable<z.ZodString>;
8457
+ items: z.ZodArray<z.ZodObject<{
8458
+ text: z.ZodString;
8459
+ refs: z.ZodNullable<z.ZodString>;
8460
+ }, z.core.$strip>>;
8461
+ }, z.core.$strip>>;
8462
+ translation: z.ZodNullable<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8463
+ state: z.ZodLiteral<"ready">;
8464
+ value: z.ZodArray<z.ZodObject<{
8465
+ title: z.ZodNullable<z.ZodString>;
8466
+ items: z.ZodArray<z.ZodObject<{
8467
+ text: z.ZodString;
8468
+ refs: z.ZodNullable<z.ZodString>;
8469
+ }, z.core.$strip>>;
8470
+ }, z.core.$strip>>;
8471
+ }, z.core.$strip>, z.ZodObject<{
8472
+ state: z.ZodLiteral<"pending">;
8473
+ }, z.core.$strip>, z.ZodObject<{
8474
+ state: z.ZodLiteral<"failed">;
8475
+ failure: z.ZodObject<{
8476
+ operation: z.ZodString;
8477
+ stage: z.ZodString;
8478
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8479
+ }, z.core.$strip>;
8480
+ }, z.core.$strip>], "state">, z.ZodObject<{
8481
+ state: z.ZodLiteral<"not_applicable">;
8482
+ reason: z.ZodLiteral<"no_curated_notes">;
8483
+ }, z.core.$strip>]>>;
8484
+ }, z.core.$strip>;
8485
+ };
8486
+ readonly claude: {
8487
+ reference: z.ZodObject<{
8488
+ product: z.ZodEnum<{
8489
+ app: "app";
8490
+ cli: "cli";
8491
+ }>;
8492
+ version: z.ZodString;
8493
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8494
+ kind: z.ZodLiteral<"instant">;
8495
+ at: z.ZodISODateTime;
8496
+ }, z.core.$strip>, z.ZodObject<{
8497
+ kind: z.ZodLiteral<"date">;
8498
+ date: z.ZodISODate;
8499
+ }, z.core.$strip>], "kind">;
8500
+ month: z.ZodString;
8501
+ revision: z.ZodString;
8502
+ }, z.core.$strip>;
8503
+ directory: z.ZodObject<{
8504
+ contractVersion: z.ZodLiteral<2>;
8505
+ releases: z.ZodArray<z.ZodObject<{
8506
+ product: z.ZodEnum<{
8507
+ app: "app";
8508
+ cli: "cli";
8509
+ }>;
8510
+ version: z.ZodString;
8511
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8512
+ kind: z.ZodLiteral<"instant">;
8513
+ at: z.ZodISODateTime;
8514
+ }, z.core.$strip>, z.ZodObject<{
8515
+ kind: z.ZodLiteral<"date">;
8516
+ date: z.ZodISODate;
8517
+ }, z.core.$strip>], "kind">;
8518
+ month: z.ZodString;
8519
+ revision: z.ZodString;
8520
+ }, z.core.$strip>>;
8521
+ latest: z.ZodObject<{
8522
+ app: z.ZodNullable<z.ZodString>;
8523
+ cli: z.ZodNullable<z.ZodString>;
8524
+ }, z.core.$strip>;
8525
+ }, z.core.$strip>;
8526
+ month: z.ZodObject<{
8527
+ contractVersion: z.ZodLiteral<2>;
8528
+ locale: z.ZodEnum<{
8529
+ "zh-Hans": "zh-Hans";
8530
+ "zh-Hant": "zh-Hant";
8531
+ ja: "ja";
8532
+ ko: "ko";
8533
+ en: "en";
8534
+ }>;
8535
+ month: z.ZodString;
8536
+ releases: z.ZodArray<z.ZodObject<{
8537
+ source: z.ZodObject<{
8538
+ kind: z.ZodEnum<{
8539
+ github: "github";
8540
+ official: "official";
8541
+ }>;
8542
+ url: z.ZodURL;
8543
+ }, z.core.$strip>;
8544
+ summary: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8545
+ state: z.ZodLiteral<"ready">;
8546
+ value: z.ZodObject<{
8547
+ locale: z.ZodEnum<{
8548
+ "zh-Hans": "zh-Hans";
8549
+ "zh-Hant": "zh-Hant";
8550
+ ja: "ja";
8551
+ ko: "ko";
8552
+ en: "en";
8553
+ }>;
8554
+ points: z.ZodArray<z.ZodString>;
8555
+ }, z.core.$strip>;
8556
+ }, z.core.$strip>, z.ZodObject<{
8557
+ state: z.ZodLiteral<"pending">;
8558
+ }, z.core.$strip>, z.ZodObject<{
8559
+ state: z.ZodLiteral<"failed">;
8560
+ failure: z.ZodObject<{
8561
+ operation: z.ZodString;
8562
+ stage: z.ZodString;
8563
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8564
+ }, z.core.$strip>;
8565
+ }, z.core.$strip>], "state">, z.ZodObject<{
8566
+ state: z.ZodLiteral<"not_applicable">;
8567
+ reason: z.ZodLiteral<"no_curated_notes">;
8568
+ }, z.core.$strip>]>;
8569
+ notesCount: z.ZodNumber;
8570
+ product: z.ZodEnum<{
8571
+ app: "app";
8572
+ cli: "cli";
8573
+ }>;
8574
+ version: z.ZodString;
8575
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8576
+ kind: z.ZodLiteral<"instant">;
8577
+ at: z.ZodISODateTime;
8578
+ }, z.core.$strip>, z.ZodObject<{
8579
+ kind: z.ZodLiteral<"date">;
8580
+ date: z.ZodISODate;
8581
+ }, z.core.$strip>], "kind">;
8582
+ month: z.ZodString;
8583
+ revision: z.ZodString;
8584
+ }, z.core.$strip>>;
8585
+ }, z.core.$strip>;
8586
+ notes: z.ZodObject<{
8587
+ contractVersion: z.ZodLiteral<2>;
8588
+ product: z.ZodEnum<{
8589
+ app: "app";
8590
+ cli: "cli";
8591
+ }>;
8592
+ version: z.ZodString;
8593
+ revision: z.ZodString;
8594
+ locale: z.ZodEnum<{
8595
+ "zh-Hans": "zh-Hans";
8596
+ "zh-Hant": "zh-Hant";
8597
+ ja: "ja";
8598
+ ko: "ko";
8599
+ en: "en";
8600
+ }>;
8601
+ original: z.ZodArray<z.ZodObject<{
8602
+ title: z.ZodNullable<z.ZodString>;
8603
+ items: z.ZodArray<z.ZodObject<{
8604
+ text: z.ZodString;
8605
+ refs: z.ZodNullable<z.ZodString>;
8606
+ }, z.core.$strip>>;
8607
+ }, z.core.$strip>>;
8608
+ translation: z.ZodNullable<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8609
+ state: z.ZodLiteral<"ready">;
8610
+ value: z.ZodArray<z.ZodObject<{
8611
+ title: z.ZodNullable<z.ZodString>;
8612
+ items: z.ZodArray<z.ZodObject<{
8613
+ text: z.ZodString;
8614
+ refs: z.ZodNullable<z.ZodString>;
8615
+ }, z.core.$strip>>;
8616
+ }, z.core.$strip>>;
8617
+ }, z.core.$strip>, z.ZodObject<{
8618
+ state: z.ZodLiteral<"pending">;
8619
+ }, z.core.$strip>, z.ZodObject<{
8620
+ state: z.ZodLiteral<"failed">;
8621
+ failure: z.ZodObject<{
8622
+ operation: z.ZodString;
8623
+ stage: z.ZodString;
8624
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8625
+ }, z.core.$strip>;
8626
+ }, z.core.$strip>], "state">, z.ZodObject<{
8627
+ state: z.ZodLiteral<"not_applicable">;
8628
+ reason: z.ZodLiteral<"no_curated_notes">;
8629
+ }, z.core.$strip>]>>;
8630
+ }, z.core.$strip>;
8631
+ };
8632
+ readonly antigravity: {
8633
+ reference: z.ZodObject<{
8634
+ product: z.ZodEnum<{
8635
+ app: "app";
8636
+ cli: "cli";
8637
+ }>;
8638
+ version: z.ZodString;
8639
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8640
+ kind: z.ZodLiteral<"instant">;
8641
+ at: z.ZodISODateTime;
8642
+ }, z.core.$strip>, z.ZodObject<{
8643
+ kind: z.ZodLiteral<"date">;
8644
+ date: z.ZodISODate;
8645
+ }, z.core.$strip>], "kind">;
8646
+ month: z.ZodString;
8647
+ revision: z.ZodString;
8648
+ }, z.core.$strip>;
8649
+ directory: z.ZodObject<{
8650
+ contractVersion: z.ZodLiteral<2>;
8651
+ releases: z.ZodArray<z.ZodObject<{
8652
+ product: z.ZodEnum<{
8653
+ app: "app";
8654
+ cli: "cli";
8655
+ }>;
8656
+ version: z.ZodString;
8657
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8658
+ kind: z.ZodLiteral<"instant">;
8659
+ at: z.ZodISODateTime;
8660
+ }, z.core.$strip>, z.ZodObject<{
8661
+ kind: z.ZodLiteral<"date">;
8662
+ date: z.ZodISODate;
8663
+ }, z.core.$strip>], "kind">;
8664
+ month: z.ZodString;
8665
+ revision: z.ZodString;
8666
+ }, z.core.$strip>>;
8667
+ latest: z.ZodObject<{
8668
+ app: z.ZodNullable<z.ZodString>;
8669
+ cli: z.ZodNullable<z.ZodString>;
8670
+ }, z.core.$strip>;
8671
+ }, z.core.$strip>;
8672
+ month: z.ZodObject<{
8673
+ contractVersion: z.ZodLiteral<2>;
8674
+ locale: z.ZodEnum<{
8675
+ "zh-Hans": "zh-Hans";
8676
+ "zh-Hant": "zh-Hant";
8677
+ ja: "ja";
8678
+ ko: "ko";
8679
+ en: "en";
8680
+ }>;
8681
+ month: z.ZodString;
8682
+ releases: z.ZodArray<z.ZodObject<{
8683
+ source: z.ZodObject<{
8684
+ kind: z.ZodEnum<{
8685
+ github: "github";
8686
+ official: "official";
8687
+ }>;
8688
+ url: z.ZodURL;
8689
+ }, z.core.$strip>;
8690
+ summary: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8691
+ state: z.ZodLiteral<"ready">;
8692
+ value: z.ZodObject<{
8693
+ locale: z.ZodEnum<{
8694
+ "zh-Hans": "zh-Hans";
8695
+ "zh-Hant": "zh-Hant";
8696
+ ja: "ja";
8697
+ ko: "ko";
8698
+ en: "en";
8699
+ }>;
8700
+ points: z.ZodArray<z.ZodString>;
8701
+ }, z.core.$strip>;
8702
+ }, z.core.$strip>, z.ZodObject<{
8703
+ state: z.ZodLiteral<"pending">;
8704
+ }, z.core.$strip>, z.ZodObject<{
8705
+ state: z.ZodLiteral<"failed">;
8706
+ failure: z.ZodObject<{
8707
+ operation: z.ZodString;
8708
+ stage: z.ZodString;
8709
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8710
+ }, z.core.$strip>;
8711
+ }, z.core.$strip>], "state">, z.ZodObject<{
8712
+ state: z.ZodLiteral<"not_applicable">;
8713
+ reason: z.ZodLiteral<"no_curated_notes">;
8714
+ }, z.core.$strip>]>;
8715
+ notesCount: z.ZodNumber;
8716
+ product: z.ZodEnum<{
8717
+ app: "app";
8718
+ cli: "cli";
8719
+ }>;
8720
+ version: z.ZodString;
8721
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
8722
+ kind: z.ZodLiteral<"instant">;
8723
+ at: z.ZodISODateTime;
8724
+ }, z.core.$strip>, z.ZodObject<{
8725
+ kind: z.ZodLiteral<"date">;
8726
+ date: z.ZodISODate;
8727
+ }, z.core.$strip>], "kind">;
8728
+ month: z.ZodString;
8729
+ revision: z.ZodString;
8730
+ }, z.core.$strip>>;
8731
+ }, z.core.$strip>;
8732
+ notes: z.ZodObject<{
8733
+ contractVersion: z.ZodLiteral<2>;
8734
+ product: z.ZodEnum<{
8735
+ app: "app";
8736
+ cli: "cli";
8737
+ }>;
8738
+ version: z.ZodString;
8739
+ revision: z.ZodString;
8740
+ locale: z.ZodEnum<{
8741
+ "zh-Hans": "zh-Hans";
8742
+ "zh-Hant": "zh-Hant";
8743
+ ja: "ja";
8744
+ ko: "ko";
8745
+ en: "en";
8746
+ }>;
8747
+ original: z.ZodArray<z.ZodObject<{
8748
+ title: z.ZodNullable<z.ZodString>;
8749
+ items: z.ZodArray<z.ZodObject<{
8750
+ text: z.ZodString;
8751
+ refs: z.ZodNullable<z.ZodString>;
8752
+ }, z.core.$strip>>;
8753
+ }, z.core.$strip>>;
8754
+ translation: z.ZodNullable<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
8755
+ state: z.ZodLiteral<"ready">;
8756
+ value: z.ZodArray<z.ZodObject<{
8757
+ title: z.ZodNullable<z.ZodString>;
8758
+ items: z.ZodArray<z.ZodObject<{
8759
+ text: z.ZodString;
8760
+ refs: z.ZodNullable<z.ZodString>;
8761
+ }, z.core.$strip>>;
8762
+ }, z.core.$strip>>;
8763
+ }, z.core.$strip>, z.ZodObject<{
8764
+ state: z.ZodLiteral<"pending">;
8765
+ }, z.core.$strip>, z.ZodObject<{
8766
+ state: z.ZodLiteral<"failed">;
8767
+ failure: z.ZodObject<{
8768
+ operation: z.ZodString;
8769
+ stage: z.ZodString;
8770
+ cause: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8771
+ }, z.core.$strip>;
8772
+ }, z.core.$strip>], "state">, z.ZodObject<{
8773
+ state: z.ZodLiteral<"not_applicable">;
8774
+ reason: z.ZodLiteral<"no_curated_notes">;
8775
+ }, z.core.$strip>]>>;
8776
+ }, z.core.$strip>;
8777
+ };
8778
+ };
8297
8779
  declare const radarCodexReleaseDirectorySchema: z.ZodObject<{
8298
8780
  contractVersion: z.ZodLiteral<2>;
8299
8781
  releases: z.ZodArray<z.ZodObject<{
8300
8782
  product: z.ZodEnum<{
8301
- cli: "cli";
8302
8783
  app: "app";
8784
+ cli: "cli";
8303
8785
  }>;
8304
8786
  version: z.ZodString;
8305
8787
  published: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -8362,8 +8844,8 @@ declare const radarCodexReleaseMonthSchema: z.ZodObject<{
8362
8844
  }, z.core.$strip>]>;
8363
8845
  notesCount: z.ZodNumber;
8364
8846
  product: z.ZodEnum<{
8365
- cli: "cli";
8366
8847
  app: "app";
8848
+ cli: "cli";
8367
8849
  }>;
8368
8850
  version: z.ZodString;
8369
8851
  published: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -8377,18 +8859,11 @@ declare const radarCodexReleaseMonthSchema: z.ZodObject<{
8377
8859
  revision: z.ZodString;
8378
8860
  }, z.core.$strip>>;
8379
8861
  }, z.core.$strip>;
8380
- declare const radarCodexReleaseSectionsSchema: z.ZodArray<z.ZodObject<{
8381
- title: z.ZodNullable<z.ZodString>;
8382
- items: z.ZodArray<z.ZodObject<{
8383
- text: z.ZodString;
8384
- refs: z.ZodNullable<z.ZodString>;
8385
- }, z.core.$strip>>;
8386
- }, z.core.$strip>>;
8387
8862
  declare const radarCodexReleaseNotesSchema: z.ZodObject<{
8388
8863
  contractVersion: z.ZodLiteral<2>;
8389
8864
  product: z.ZodEnum<{
8390
- cli: "cli";
8391
8865
  app: "app";
8866
+ cli: "cli";
8392
8867
  }>;
8393
8868
  version: z.ZodString;
8394
8869
  revision: z.ZodString;
@@ -8429,15 +8904,18 @@ declare const radarCodexReleaseNotesSchema: z.ZodObject<{
8429
8904
  reason: z.ZodLiteral<"no_curated_notes">;
8430
8905
  }, z.core.$strip>]>>;
8431
8906
  }, z.core.$strip>;
8432
- type RadarCodexReleaseDirectory = z.infer<typeof radarCodexReleaseDirectorySchema>;
8433
- type RadarCodexReleaseMonth = z.infer<typeof radarCodexReleaseMonthSchema>;
8434
- type RadarCodexReleaseNotes = z.infer<typeof radarCodexReleaseNotesSchema>;
8907
+ type RadarReleaseDirectory = z.infer<typeof radarCodexReleaseDirectorySchema>;
8908
+ type RadarReleaseMonth = z.infer<typeof radarCodexReleaseMonthSchema>;
8909
+ type RadarReleaseNotes = z.infer<typeof radarCodexReleaseNotesSchema>;
8910
+ type RadarCodexReleaseDirectory = RadarReleaseDirectory;
8911
+ type RadarCodexReleaseMonth = RadarReleaseMonth;
8912
+ type RadarCodexReleaseNotes = RadarReleaseNotes;
8435
8913
  type RadarCodexTimePoint = z.infer<typeof radarCodexTimePointSchema>;
8436
8914
  /** Schema validation includes serialized UTF-8 limits; no caller receives partial data. */
8437
8915
  declare const parseRadarCodexReleaseDirectory: (value: unknown) => {
8438
8916
  contractVersion: 2;
8439
8917
  releases: {
8440
- product: "cli" | "app";
8918
+ product: "app" | "cli";
8441
8919
  version: string;
8442
8920
  published: {
8443
8921
  kind: "instant";
@@ -8483,7 +8961,7 @@ declare const parseRadarCodexReleaseMonth: (value: unknown) => {
8483
8961
  };
8484
8962
  };
8485
8963
  notesCount: number;
8486
- product: "cli" | "app";
8964
+ product: "app" | "cli";
8487
8965
  version: string;
8488
8966
  published: {
8489
8967
  kind: "instant";
@@ -8498,7 +8976,7 @@ declare const parseRadarCodexReleaseMonth: (value: unknown) => {
8498
8976
  };
8499
8977
  declare const parseRadarCodexReleaseNotes: (value: unknown) => {
8500
8978
  contractVersion: 2;
8501
- product: "cli" | "app";
8979
+ product: "app" | "cli";
8502
8980
  version: string;
8503
8981
  revision: string;
8504
8982
  locale: "zh-Hans" | "zh-Hant" | "ja" | "ko" | "en";
@@ -8532,11 +9010,109 @@ declare const parseRadarCodexReleaseNotes: (value: unknown) => {
8532
9010
  };
8533
9011
  } | null;
8534
9012
  };
8535
- /** Reads a bounded public directory and preserves HTTP, transport and parsing causes. */
9013
+ /** Reads a bounded public file and preserves HTTP, transport and parsing causes. */
9014
+ declare const readRadarReleaseDirectory: (tool: RadarReleaseTool, response: Response) => Promise<{
9015
+ contractVersion: 2;
9016
+ releases: {
9017
+ product: "app" | "cli";
9018
+ version: string;
9019
+ published: {
9020
+ kind: "instant";
9021
+ at: string;
9022
+ } | {
9023
+ kind: "date";
9024
+ date: string;
9025
+ };
9026
+ month: string;
9027
+ revision: string;
9028
+ }[];
9029
+ latest: {
9030
+ app: string | null;
9031
+ cli: string | null;
9032
+ };
9033
+ }>;
9034
+ declare const readRadarReleaseMonth: (tool: RadarReleaseTool, response: Response) => Promise<{
9035
+ contractVersion: 2;
9036
+ locale: "zh-Hans" | "zh-Hant" | "ja" | "ko" | "en";
9037
+ month: string;
9038
+ releases: {
9039
+ source: {
9040
+ kind: "github" | "official";
9041
+ url: string;
9042
+ };
9043
+ summary: {
9044
+ state: "not_applicable";
9045
+ reason: "no_curated_notes";
9046
+ } | {
9047
+ state: "ready";
9048
+ value: {
9049
+ locale: "zh-Hans" | "zh-Hant" | "ja" | "ko" | "en";
9050
+ points: string[];
9051
+ };
9052
+ } | {
9053
+ state: "pending";
9054
+ } | {
9055
+ state: "failed";
9056
+ failure: {
9057
+ operation: string;
9058
+ stage: string;
9059
+ cause: Record<string, unknown>;
9060
+ };
9061
+ };
9062
+ notesCount: number;
9063
+ product: "app" | "cli";
9064
+ version: string;
9065
+ published: {
9066
+ kind: "instant";
9067
+ at: string;
9068
+ } | {
9069
+ kind: "date";
9070
+ date: string;
9071
+ };
9072
+ month: string;
9073
+ revision: string;
9074
+ }[];
9075
+ }>;
9076
+ declare const readRadarReleaseNotes: (tool: RadarReleaseTool, response: Response) => Promise<{
9077
+ contractVersion: 2;
9078
+ product: "app" | "cli";
9079
+ version: string;
9080
+ revision: string;
9081
+ locale: "zh-Hans" | "zh-Hant" | "ja" | "ko" | "en";
9082
+ original: {
9083
+ title: string | null;
9084
+ items: {
9085
+ text: string;
9086
+ refs: string | null;
9087
+ }[];
9088
+ }[];
9089
+ translation: {
9090
+ state: "not_applicable";
9091
+ reason: "no_curated_notes";
9092
+ } | {
9093
+ state: "ready";
9094
+ value: {
9095
+ title: string | null;
9096
+ items: {
9097
+ text: string;
9098
+ refs: string | null;
9099
+ }[];
9100
+ }[];
9101
+ } | {
9102
+ state: "pending";
9103
+ } | {
9104
+ state: "failed";
9105
+ failure: {
9106
+ operation: string;
9107
+ stage: string;
9108
+ cause: Record<string, unknown>;
9109
+ };
9110
+ } | null;
9111
+ }>;
8536
9112
  declare const readRadarCodexReleaseDirectory: (response: Response) => Promise<{
8537
9113
  contractVersion: 2;
8538
9114
  releases: {
8539
- product: "cli" | "app";
9115
+ product: "app" | "cli";
8540
9116
  version: string;
8541
9117
  published: {
8542
9118
  kind: "instant";
@@ -8582,7 +9158,7 @@ declare const readRadarCodexReleaseMonth: (response: Response) => Promise<{
8582
9158
  };
8583
9159
  };
8584
9160
  notesCount: number;
8585
- product: "cli" | "app";
9161
+ product: "app" | "cli";
8586
9162
  version: string;
8587
9163
  published: {
8588
9164
  kind: "instant";
@@ -8597,7 +9173,7 @@ declare const readRadarCodexReleaseMonth: (response: Response) => Promise<{
8597
9173
  }>;
8598
9174
  declare const readRadarCodexReleaseNotes: (response: Response) => Promise<{
8599
9175
  contractVersion: 2;
8600
- product: "cli" | "app";
9176
+ product: "app" | "cli";
8601
9177
  version: string;
8602
9178
  revision: string;
8603
9179
  locale: "zh-Hans" | "zh-Hant" | "ja" | "ko" | "en";
@@ -8631,10 +9207,57 @@ declare const readRadarCodexReleaseNotes: (response: Response) => Promise<{
8631
9207
  };
8632
9208
  } | null;
8633
9209
  }>;
9210
+ declare const radarReleaseDirectoryPath: (tool: RadarReleaseTool) => string;
8634
9211
  /** Paths follow source publication months; visitor time-zone grouping does not change storage locations. */
8635
- declare function radarCodexReleaseMonthPath(locale: RadarWebsiteLocale, month: string): string;
9212
+ declare function radarReleaseMonthPath(tool: RadarReleaseTool, locale: RadarWebsiteLocale, month: string): string;
8636
9213
  /** A release's two-part identity is validated before it becomes a public file locator. */
8637
- declare function radarCodexReleaseNotesPath(locale: RadarWebsiteLocale, product: "app" | "cli", version: string): string;
9214
+ declare function radarReleaseNotesPath(tool: RadarReleaseTool, locale: RadarWebsiteLocale, product: RadarReleaseProduct, version: string): string;
9215
+ declare const radarCodexReleaseDirectoryPath: string;
9216
+ declare const radarCodexReleaseMonthPath: (locale: RadarWebsiteLocale, month: string) => string;
9217
+ declare const radarCodexReleaseNotesPath: (locale: RadarWebsiteLocale, product: RadarReleaseProduct, version: string) => string;
9218
+ /** Core → Data handoff for non-Codex release files; Codex keeps its established event. */
9219
+ declare const radarToolReleasePublicationEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
9220
+ eventType: z.ZodLiteral<"release_snapshot_available">;
9221
+ tool: z.ZodLiteral<"claude">;
9222
+ months: z.ZodArray<z.ZodString>;
9223
+ releases: z.ZodArray<z.ZodObject<{
9224
+ product: z.ZodEnum<{
9225
+ app: "app";
9226
+ cli: "cli";
9227
+ }>;
9228
+ version: z.ZodString;
9229
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
9230
+ kind: z.ZodLiteral<"instant">;
9231
+ at: z.ZodISODateTime;
9232
+ }, z.core.$strip>, z.ZodObject<{
9233
+ kind: z.ZodLiteral<"date">;
9234
+ date: z.ZodISODate;
9235
+ }, z.core.$strip>], "kind">;
9236
+ month: z.ZodString;
9237
+ revision: z.ZodString;
9238
+ }, z.core.$strip>>;
9239
+ }, z.core.$strict>, z.ZodObject<{
9240
+ eventType: z.ZodLiteral<"release_snapshot_available">;
9241
+ tool: z.ZodLiteral<"antigravity">;
9242
+ months: z.ZodArray<z.ZodString>;
9243
+ releases: z.ZodArray<z.ZodObject<{
9244
+ product: z.ZodEnum<{
9245
+ app: "app";
9246
+ cli: "cli";
9247
+ }>;
9248
+ version: z.ZodString;
9249
+ published: z.ZodDiscriminatedUnion<[z.ZodObject<{
9250
+ kind: z.ZodLiteral<"instant">;
9251
+ at: z.ZodISODateTime;
9252
+ }, z.core.$strip>, z.ZodObject<{
9253
+ kind: z.ZodLiteral<"date">;
9254
+ date: z.ZodISODate;
9255
+ }, z.core.$strip>], "kind">;
9256
+ month: z.ZodString;
9257
+ revision: z.ZodString;
9258
+ }, z.core.$strip>>;
9259
+ }, z.core.$strict>], "tool">;
9260
+ type RadarToolReleasePublicationEvent = z.infer<typeof radarToolReleasePublicationEventSchema>;
8638
9261
  //#endregion
8639
9262
  //#region src/codex-models.d.ts
8640
9263
  declare const radarCodexModelsMaxBytes: number;
@@ -11015,4 +11638,4 @@ declare const radarResetExportV4Schema: z.ZodObject<{
11015
11638
  type RadarResetExportV4 = z.infer<typeof radarResetExportV4Schema>;
11016
11639
  declare const parseRadarResetExportV4: (value: unknown) => RadarResetExportV4;
11017
11640
  //#endregion
11018
- export { CreateRadarResetSourceErrorEnvelopeInputV2, RadarActivityFile, RadarActivityFileV2, RadarActivityFileV3, RadarActivityProgress, RadarActivityProgressV2, RadarActivityProgressV3, RadarActivityReactionId, RadarAiRadarDigestV2, RadarAiRadarEntry, RadarAiRadarEntryV2, RadarAiRadarEventV2, RadarAiRadarFollowUp, RadarAiRadarFollowV2, RadarAiRadarLatest, RadarAiRadarLatestV2, RadarAiRadarLeak, RadarAiRadarLeakV2, RadarAiRadarMonth, RadarAiRadarMonthV2, RadarAiRadarSource, RadarAiRadarSourceV2, RadarAiRadarSummary, RadarAiRadarTitle, RadarAiRadarTool, 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, RadarImprovementEntry, RadarImprovementHead, RadarImprovementPage, RadarNotificationProjection, RadarNotificationTarget, RadarNotificationTask, RadarNotificationTasks, RadarNotificationTopic, RadarResetActionDetailV1, RadarResetActionDetailV2, RadarResetActionDetailV3, RadarResetActionItemV2, RadarResetActionSummaryV2, RadarResetActiveActionItemV2, RadarResetAnalysisV1, RadarResetClue, RadarResetClueSnapshot, RadarResetConfirmation, RadarResetDetailChunkReferenceV2, RadarResetDetailChunkRequestV2, RadarResetDetailManifestV2, RadarResetDetailMultipartEncodeInputV2, RadarResetDetailMultipartParseInputV2, RadarResetDetailMultipartPartV2, RadarResetExportV1, RadarResetExportV2, RadarResetExportV3, RadarResetExportV4, RadarResetManagement, RadarResetManagementProduct, RadarResetPendingActionV1, RadarResetPendingActionV2, RadarResetPositiveDecimalV2, RadarResetPrimarySourceV1, RadarResetProductPublicRecordsV1, RadarResetProductRecordsProduct, 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, RadarResetStatisticsV2, RadarResetUInt64DecimalV2, RadarResetUtcTimestampV2, RadarTiboSourceStatus, RadarTitledActivityFile, RadarTitledActivityProgress, RadarWebsiteLocale, RadarWechatDispatchRequest, RadarWechatDispatchResponse, RadarWechatDispatchResult, activeRadarResetClue, compareRadarAiRadarEntries, compareRadarAiRadarEntriesV2, compareRadarAiRadarPublicationTimes, compareRadarNotificationTasks, compareRadarResetActionDetailsV1, compareRadarResetUtcTimestampsV1, createRadarBrowserNotificationProjection, createRadarCodexProgressCalendar, createRadarNotificationProjection, createRadarResetSourceErrorEnvelopeV2, encodeRadarActivityFile, encodeRadarActivityFileV2, encodeRadarActivityFileV3, encodeRadarResetDetailMultipartV2, encodeRadarTitledActivityFile, formatRadarResetPositiveDecimalV2, formatRadarResetUInt64DecimalV2, initialRadarBrowserSubscription, initialRadarBrowserSubscriptionV2, parseRadarAiRadarEventV2, parseRadarAiRadarLatest, parseRadarAiRadarLatestV2, parseRadarAiRadarMonth, parseRadarAiRadarMonthV2, parseRadarCodexModels, parseRadarCodexProgressChangeV3, parseRadarCodexProgressChangesV3, parseRadarCodexProgressV1, parseRadarCodexProgressV2, parseRadarCodexProgressV3, parseRadarCodexProgressV4, parseRadarCodexProgressV5, parseRadarCodexReleaseDirectory, parseRadarCodexReleaseMonth, parseRadarCodexReleaseNotes, parseRadarResetActionDetailV1, parseRadarResetActionDetailV2, parseRadarResetActionDetailV3, parseRadarResetActionSummaryV2, parseRadarResetAnalysisV1, parseRadarResetClueSnapshot, parseRadarResetDetailMultipartV2, parseRadarResetExportV1, parseRadarResetExportV2, parseRadarResetExportV3, parseRadarResetExportV4, 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, radarAiRadarContentLanguage, radarAiRadarDigestV2Schema, radarAiRadarEntrySchema, radarAiRadarEntryV2Schema, radarAiRadarEventUrl, radarAiRadarEventV2MaxBytes, radarAiRadarEventV2Path, radarAiRadarEventV2Schema, radarAiRadarFollowUpSchema, radarAiRadarFollowV2Schema, radarAiRadarIdV2Schema, radarAiRadarKindSchema, radarAiRadarLatestMaxBytes, radarAiRadarLatestPath, radarAiRadarLatestSchema, radarAiRadarLatestV2MaxBytes, radarAiRadarLatestV2Path, radarAiRadarLatestV2Schema, radarAiRadarLeakSchema, radarAiRadarLeakV2Schema, radarAiRadarMonthMaxBytes, radarAiRadarMonthPath, radarAiRadarMonthSchema, radarAiRadarMonthV2MaxBytes, radarAiRadarMonthV2Path, radarAiRadarMonthV2Schema, radarAiRadarPublicationTimeSchema, radarAiRadarSourceSchema, radarAiRadarSourceStaleMs, radarAiRadarSourceV2Schema, radarAiRadarSourcesStale, radarAiRadarStoryStatus, radarAiRadarSummarySchema, radarAiRadarTimeInWindow, radarAiRadarTimeView, radarAiRadarTitleSchema, radarAiRadarToolValues, 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, radarCodexProgressOutcome, 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, radarCompactTitle, 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, radarResetConfirmationSchema, radarResetConfirmationsResponseSchema, radarResetContractVersionV1, radarResetContractVersionV2, radarResetDetailBatchMaxBytesV2, radarResetDetailBatchMaxChunksV2, radarResetDetailChunkReferenceV2Schema, radarResetDetailChunkRequestV2Schema, radarResetDetailManifestV2Schema, radarResetEffectValues, radarResetExportV1Schema, radarResetExportV2Schema, radarResetExportV3Schema, radarResetExportV4Schema, radarResetKindNoticeV2Schema, radarResetManagementActionSchema, radarResetManagementOperationSchema, radarResetManagementProductSchema, radarResetManagementResSchema, radarResetManualApplyReqSchema, radarResetManualCopySchema, radarResetManualDraftSchema, radarResetManualDraftSeedSchema, radarResetManualPreviewReqSchema, radarResetManualPreviewResSchema, radarResetManualResultResSchema, radarResetNoticeKindValues, radarResetPendingActionV1Schema, radarResetPendingActionV2Schema, radarResetPlanValues, radarResetPositiveDecimalV2Schema, radarResetProductPublicRecordsCorePath, radarResetProductPublicRecordsV1Schema, radarResetProductRecordsProductValues, 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, radarResetStatisticsV2Schema, radarResetUInt64DecimalV2Schema, radarResetUInt64DecimalV2ToBigInt, radarResetUnexecutedActionV1Schema, radarResetUtcTimestampV2Schema, radarResetWithdrawnActionItemV2Schema, radarResetWithdrawnActionV1Schema, radarTiboSourceStatusMaxBytes, radarTiboSourceStatusPath, radarTiboSourceStatusSchema, radarTitledActivityFileSchema, radarTitledActivityProgressSchema, radarWebsiteLegacyChinesePrefix, radarWebsiteLocalePrefixes, radarWebsiteLocaleSlugs, radarWebsiteLocales, radarWebsiteOrigin, radarWebsitePagePaths, radarWebsitePageUrl, radarWechatDispatchPath, radarWechatDispatchRequestSchema, radarWechatDispatchResponseSchema, radarWechatDispatchResultSchema, radarWechatPrivateDispatchPath, readRadarActivityFile, readRadarActivityFileV2, readRadarActivityFileV3, readRadarAiRadarEventV2, readRadarAiRadarLatest, readRadarAiRadarLatestV2, readRadarAiRadarMonth, readRadarAiRadarMonthV2, readRadarCodexModels, readRadarCodexReleaseDirectory, readRadarCodexReleaseMonth, readRadarCodexReleaseNotes, readRadarResetClueSnapshot, readRadarTiboSourceStatus, readRadarTitledActivityFile, redactRadarBrowserRegistrationReferences, refineRadarResetStatistics, toSafeCauseSnapshotV2, upgradeRadarBrowserSubscriptionCommandV1 };
11641
+ export { CreateRadarResetSourceErrorEnvelopeInputV2, RadarActivityFile, RadarActivityFileV2, RadarActivityFileV3, RadarActivityProgress, RadarActivityProgressV2, RadarActivityProgressV3, RadarActivityReactionId, RadarAiRadarDigestV2, RadarAiRadarEntry, RadarAiRadarEntryV2, RadarAiRadarEventV2, RadarAiRadarFollowUp, RadarAiRadarFollowV2, RadarAiRadarLatest, RadarAiRadarLatestV2, RadarAiRadarLeak, RadarAiRadarLeakV2, RadarAiRadarMonth, RadarAiRadarMonthV2, RadarAiRadarSource, RadarAiRadarSourceV2, RadarAiRadarSummary, RadarAiRadarTitle, RadarAiRadarTool, 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, RadarImprovementEntry, RadarImprovementHead, RadarImprovementPage, RadarNotificationProjection, RadarNotificationTarget, RadarNotificationTask, RadarNotificationTasks, RadarNotificationTopic, RadarReleaseDirectory, RadarReleaseMonth, RadarReleaseNotes, RadarReleaseProduct, RadarReleaseTool, RadarResetActionDetailV1, RadarResetActionDetailV2, RadarResetActionDetailV3, RadarResetActionItemV2, RadarResetActionSummaryV2, RadarResetActiveActionItemV2, RadarResetAnalysisV1, RadarResetClue, RadarResetClueSnapshot, RadarResetConfirmation, RadarResetDetailChunkReferenceV2, RadarResetDetailChunkRequestV2, RadarResetDetailManifestV2, RadarResetDetailMultipartEncodeInputV2, RadarResetDetailMultipartParseInputV2, RadarResetDetailMultipartPartV2, RadarResetExportV1, RadarResetExportV2, RadarResetExportV3, RadarResetExportV4, RadarResetManagement, RadarResetManagementProduct, RadarResetPendingActionV1, RadarResetPendingActionV2, RadarResetPositiveDecimalV2, RadarResetPrimarySourceV1, RadarResetProductPublicRecordsV1, RadarResetProductRecordsProduct, 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, RadarResetStatisticsV2, RadarResetUInt64DecimalV2, RadarResetUtcTimestampV2, RadarTiboSourceStatus, RadarTitledActivityFile, RadarTitledActivityProgress, RadarToolReleasePublicationEvent, RadarWebsiteLocale, RadarWechatDispatchRequest, RadarWechatDispatchResponse, RadarWechatDispatchResult, activeRadarResetClue, compareRadarAiRadarEntries, compareRadarAiRadarEntriesV2, compareRadarAiRadarPublicationTimes, compareRadarNotificationTasks, compareRadarResetActionDetailsV1, compareRadarResetUtcTimestampsV1, createRadarBrowserNotificationProjection, createRadarCodexProgressCalendar, createRadarNotificationProjection, createRadarResetSourceErrorEnvelopeV2, encodeRadarActivityFile, encodeRadarActivityFileV2, encodeRadarActivityFileV3, encodeRadarResetDetailMultipartV2, encodeRadarTitledActivityFile, formatRadarResetPositiveDecimalV2, formatRadarResetUInt64DecimalV2, initialRadarBrowserSubscription, initialRadarBrowserSubscriptionV2, parseRadarAiRadarEventV2, parseRadarAiRadarLatest, parseRadarAiRadarLatestV2, parseRadarAiRadarMonth, parseRadarAiRadarMonthV2, parseRadarCodexModels, parseRadarCodexProgressChangeV3, parseRadarCodexProgressChangesV3, parseRadarCodexProgressV1, parseRadarCodexProgressV2, parseRadarCodexProgressV3, parseRadarCodexProgressV4, parseRadarCodexProgressV5, parseRadarCodexReleaseDirectory, parseRadarCodexReleaseMonth, parseRadarCodexReleaseNotes, parseRadarResetActionDetailV1, parseRadarResetActionDetailV2, parseRadarResetActionDetailV3, parseRadarResetActionSummaryV2, parseRadarResetAnalysisV1, parseRadarResetClueSnapshot, parseRadarResetDetailMultipartV2, parseRadarResetExportV1, parseRadarResetExportV2, parseRadarResetExportV3, parseRadarResetExportV4, 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, radarAiRadarContentLanguage, radarAiRadarDigestV2Schema, radarAiRadarEntrySchema, radarAiRadarEntryV2Schema, radarAiRadarEventUrl, radarAiRadarEventV2MaxBytes, radarAiRadarEventV2Path, radarAiRadarEventV2Schema, radarAiRadarFollowUpSchema, radarAiRadarFollowV2Schema, radarAiRadarIdV2Schema, radarAiRadarKindSchema, radarAiRadarLatestMaxBytes, radarAiRadarLatestPath, radarAiRadarLatestSchema, radarAiRadarLatestV2MaxBytes, radarAiRadarLatestV2Path, radarAiRadarLatestV2Schema, radarAiRadarLeakSchema, radarAiRadarLeakV2Schema, radarAiRadarMonthMaxBytes, radarAiRadarMonthPath, radarAiRadarMonthSchema, radarAiRadarMonthV2MaxBytes, radarAiRadarMonthV2Path, radarAiRadarMonthV2Schema, radarAiRadarPublicationTimeSchema, radarAiRadarSourceSchema, radarAiRadarSourceStaleMs, radarAiRadarSourceV2Schema, radarAiRadarSourcesStale, radarAiRadarStoryStatus, radarAiRadarSummarySchema, radarAiRadarTimeInWindow, radarAiRadarTimeView, radarAiRadarTitleSchema, radarAiRadarToolValues, radarAntigravityReleaseIdentitySchema, radarBrowserNotificationPageUrl, radarBrowserNotificationProjectionSchema, radarBrowserNotificationTargetUrlSchema, radarBrowserNotificationTopicSchema, radarBrowserRegistrationSchema, radarBrowserSubscriptionErrorRes, radarBrowserSubscriptionFailureSchema, radarBrowserSubscriptionOperationSchema, radarBrowserSubscriptionReadReq, radarBrowserSubscriptionRes, radarBrowserSubscriptionSaveReq, radarBrowserSubscriptionSaveV2Req, radarBrowserSubscriptionV2Res, radarBrowserSubscriptionViewSchema, radarBrowserSubscriptionViewV2Schema, radarBrowserSubscriptionsPath, radarBrowserTopicsSchema, radarBrowserTopicsV2Schema, radarClaudeReleaseIdentitySchema, radarCodexGuessChoiceSchema, radarCodexGuessErrorSchema, radarCodexGuessSaveReqSchema, radarCodexGuessViewSchema, radarCodexModelIdSchema, radarCodexModelUrl, radarCodexModelsMaxBytes, radarCodexModelsPath, radarCodexModelsSchema, radarCodexProgressCalendar, radarCodexProgressChangeSchema, radarCodexProgressChangeV2Schema, radarCodexProgressChangeV3Schema, radarCodexProgressChangesV1Schema, radarCodexProgressChangesV2Schema, radarCodexProgressChangesV3Schema, radarCodexProgressEntrySchema, radarCodexProgressEntryV3Schema, radarCodexProgressEntryV5Schema, radarCodexProgressImprovementV5Schema, radarCodexProgressOutcome, 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, radarCompactTitle, radarImprovementColumnPath, radarImprovementEligibilityReq, radarImprovementEligibilityRes, radarImprovementEntrySchema, radarImprovementErrorRes, radarImprovementHeadReq, radarImprovementHeadRes, radarImprovementPageMaxBytes, radarImprovementPageReq, radarImprovementPageRes, radarImprovementPageSize, radarNotificationProjectionSchema, radarNotificationTargetSchema, radarNotificationTaskPageSize, radarNotificationTaskSchema, radarNotificationTasksPath, radarNotificationTasksReq, radarNotificationTasksRes, radarNotificationTopicSchema, radarNotificationTopicsSchema, radarReleaseDirectoryPath, radarReleaseIdentitySchema, radarReleaseMonthPath, radarReleaseNotesPath, radarReleaseProductSchema, radarReleaseSchemas, radarReleaseToolSchema, radarReleaseUrl, radarResetActionDetailV1Schema, radarResetActionDetailV2Schema, radarResetActionDetailV3Schema, radarResetActionItemV2Schema, radarResetActionPageMaxBytesV2, radarResetActionPageMaxItemsV2, radarResetActionSummaryV2Schema, radarResetActiveActionItemV2Schema, radarResetAnalysisV1Schema, radarResetAnalyzerContractVersionV1, radarResetAudienceValues, radarResetChangeCoverageV2Schema, radarResetChangePageMaxBytesV2, radarResetChangePageMaxItemsV2, radarResetClueLifetimeMs, radarResetClueMaxBytes, radarResetCluePath, radarResetClueSchema, radarResetClueSnapshotSchema, radarResetConfirmationSchema, radarResetConfirmationsResponseSchema, radarResetContractVersionV1, radarResetContractVersionV2, radarResetDetailBatchMaxBytesV2, radarResetDetailBatchMaxChunksV2, radarResetDetailChunkReferenceV2Schema, radarResetDetailChunkRequestV2Schema, radarResetDetailManifestV2Schema, radarResetEffectValues, radarResetExportV1Schema, radarResetExportV2Schema, radarResetExportV3Schema, radarResetExportV4Schema, radarResetKindNoticeV2Schema, radarResetManagementActionSchema, radarResetManagementOperationSchema, radarResetManagementProductSchema, radarResetManagementResSchema, radarResetManualApplyReqSchema, radarResetManualCopySchema, radarResetManualDraftSchema, radarResetManualDraftSeedSchema, radarResetManualPreviewReqSchema, radarResetManualPreviewResSchema, radarResetManualResultResSchema, radarResetNoticeKindValues, radarResetPendingActionV1Schema, radarResetPendingActionV2Schema, radarResetPlanValues, radarResetPositiveDecimalV2Schema, radarResetProductPublicRecordsCorePath, radarResetProductPublicRecordsV1Schema, radarResetProductRecordsProductValues, 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, radarResetStatisticsV2Schema, radarResetUInt64DecimalV2Schema, radarResetUInt64DecimalV2ToBigInt, radarResetUnexecutedActionV1Schema, radarResetUtcTimestampV2Schema, radarResetWithdrawnActionItemV2Schema, radarResetWithdrawnActionV1Schema, radarTiboSourceStatusMaxBytes, radarTiboSourceStatusPath, radarTiboSourceStatusSchema, radarTitledActivityFileSchema, radarTitledActivityProgressSchema, radarToolReleasePublicationEventSchema, radarWebsiteLegacyChinesePrefix, radarWebsiteLocalePrefixes, radarWebsiteLocaleSlugs, radarWebsiteLocales, radarWebsiteOrigin, radarWebsitePagePaths, radarWebsitePageUrl, radarWechatDispatchPath, radarWechatDispatchRequestSchema, radarWechatDispatchResponseSchema, radarWechatDispatchResultSchema, radarWechatPrivateDispatchPath, readRadarActivityFile, readRadarActivityFileV2, readRadarActivityFileV3, readRadarAiRadarEventV2, readRadarAiRadarLatest, readRadarAiRadarLatestV2, readRadarAiRadarMonth, readRadarAiRadarMonthV2, readRadarCodexModels, readRadarCodexReleaseDirectory, readRadarCodexReleaseMonth, readRadarCodexReleaseNotes, readRadarReleaseDirectory, readRadarReleaseMonth, readRadarReleaseNotes, readRadarResetClueSnapshot, readRadarTiboSourceStatus, readRadarTitledActivityFile, redactRadarBrowserRegistrationReferences, refineRadarResetStatistics, toSafeCauseSnapshotV2, upgradeRadarBrowserSubscriptionCommandV1 };
package/dist/index.js CHANGED
@@ -4,8 +4,8 @@ X-Radar-Reset-Action-Id-B64: ${fn(O.encode(e.resetActionId))}\r\nX-Radar-Detail-
4
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
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.object({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),An=e.iso.date(),A=e.object({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.object({state:e.literal(`ready`),text:kn}),e.object({state:e.enum([`pending`,`failed`,`not_applicable`]),text:e.null()})]),j=e.object({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.object({hasPending:e.boolean(),hasFailures:e.boolean()}),days:e.array(e.object({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.some(e=>e.category===`improvement`&&e.deliveryState===`landed`),n=e.some(e=>e.category!==`improvement`);return t?n?`both`:`improvement`:n?`reset`:`unconfirmed`}function Pn(e){return Nn(e.filter(e=>e.deliveryState===`landed`))}const Fn=524288,In=j.shape,Ln=In.days.element,Rn=A.extend({date:In.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`})}),zn=e.object({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`})}),Bn=Ln.omit({date:!0,entries:!0}).extend({entries:e.array(Rn),lifecycle:zn}),Vn=e.object({contractVersion:e.literal(2),generatedAt:In.generatedAt,timeZone:In.timeZone,processing:In.processing,days:e.array(Bn).length(28),unassignedEntries:e.array(Rn)}).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=Pn(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 Hn(e){return Vn.parse(e)}const Un=Fn,M=e.object({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),Wn=A.extend({title:M}),Gn=Vn.shape,Kn=Gn.days.element,qn=Kn.shape.entries.element.safeExtend({title:M}),Jn=Kn.extend({title:M.nullable(),entries:e.array(qn)}).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`})}),Yn=e.object({...Gn,contractVersion:e.literal(3),days:e.array(Jn),unassignedEntries:e.array(qn)}).superRefine((e,t)=>{let n=Vn.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 Xn(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 Zn(e){return Yn.parse(e)}const Qn=Un,$n=Vn.shape,er=Yn.shape.unassignedEntries,tr=$n.days.element.omit({summary:!0}).extend({entries:er}),nr=e.object({...$n,contractVersion:e.literal(4),days:e.array(tr).length(28),unassignedEntries:er}).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!==Pn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function rr(e){return nr.parse(e)}function ir(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 ar(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 or(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 sr(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=[`👍`,`😂`,`🤡`,`💀`,`😭`,`🔥`,`🎉`,`👀`,`🙏`,`🫠`],cr=e.enum(N),P=e.string().min(1).max(128),F=524288,lr=`https://data.radarultra.com/activity/v1/latest.json`,ur=`https://data.radarultra.com/activity/v2/latest.json`,dr=A.extend({eventId:P}),fr=j.safeExtend({days:e.array(j.shape.days.element.extend({entries:e.array(dr)})).length(28),undatedEntries:e.array(dr)});function pr(e,t){ir([...e.days.flatMap(e=>e.entries),...e.undatedEntries],t)}const mr=fr.superRefine(pr),hr=e.record(cr,e.number().int().nonnegative()),gr=e.object({reactionCounts:hr,reactionTotal:e.number().int().nonnegative()});function _r(e,t){ar(e,t,N)}const vr=dr.extend(gr.shape).superRefine(_r),yr=fr.safeExtend({days:e.array(fr.shape.days.element.extend({entries:e.array(vr)})).length(28),undatedEntries:e.array(vr)}).superRefine(pr),I=e.object({publishedAt:e.iso.datetime(),reactionIds:e.array(cr).length(N.length).refine(e=>new Set(e).size===N.length,`Every reaction must occur exactly once`),progress:yr}),br=Yn.shape,xr=br.unassignedEntries.element.safeExtend({eventId:P}),Sr=e.object({...br,days:e.array(br.days.element.safeExtend({entries:e.array(xr)})).length(28),unassignedEntries:e.array(xr)}),Cr=Sr.superRefine((e,t)=>{let n=({eventId:e,...t})=>t,r=Yn.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});ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),wr=xr.safeExtend(gr.shape).superRefine(_r),Tr=Sr.safeExtend({days:e.array(br.days.element.safeExtend({entries:e.array(wr)})).length(28),unassignedEntries:e.array(wr)}).superRefine((e,t)=>{let n=({reactionCounts:e,reactionTotal:t,...n})=>n,r=Cr.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})}),Er=I.extend({progress:Tr}),Dr=nr.shape,Or=Dr.unassignedEntries.element.safeExtend({eventId:P}),kr=nr.safeExtend({days:e.array(Dr.days.element.safeExtend({entries:e.array(Or)})).length(28),unassignedEntries:e.array(Or)}).superRefine((e,t)=>{ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),Ar=Or.safeExtend(gr.shape).superRefine(_r),jr=kr.safeExtend({days:e.array(Dr.days.element.safeExtend({entries:e.array(Ar)})).length(28),unassignedEntries:e.array(Ar)}),Mr=I.extend({progress:jr});async function Nr(e){return or(e,I,F)}async function Pr(e){return or(e,Er,F)}async function Fr(e){return or(e,Mr,F)}function Ir(e){return sr(e,I,F)}function Lr(e){return sr(e,Er,F)}function Rr(e){return sr(e,Mr,F)}const zr=e.object({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()}),Br=e.object({contractVersion:e.literal(1),changes:e.array(zr),nextCursor:e.string().min(1),hasMore:e.boolean()}),Vr=zr.extend({dayNumber:j.shape.days.element.shape.dayNumber.nullable()}),Hr=Br.extend({contractVersion:e.literal(2),changes:e.array(Vr)}),Ur=e.int().min(0).max(2**53-1),Wr=e.int().min(1).max(28),Gr=e.enum([`yes`,`no`]).nullable(),Kr=e.object({choice:Gr}).strict(),qr=e.object({yes:Ur,no:Ur,total:Ur}).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.`})}),Jr=e.object({dayNumber:Wr,state:e.enum([`unopened`,`open`,`closed`]),choice:Gr,outcome:e.enum([`unconfirmed`,`yes`,`no`]),personalResult:e.enum([`none`,`waiting`,`correct`,`incorrect`]),corrected:e.boolean(),counts:qr}).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.`})}),Yr=e.object({revision:Ur,openDayNumber:Wr.nullable(),days:e.array(Jr).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.`})}}),Xr=e.object({error:e.object({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.`})}),Zr=e.object({"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}),Qr=x.shape.noticeTimeline.element.omit({sourceTextZh:!0}).extend({sourceTranslations:Zr}),$r=e.object({...x.shape,contractVersion:e.literal(2),noticeTimeline:e.array(Qr).min(1).max(i.actionDetail.noticeTimeline)}),ei=Qr.omit({phase:!0}).extend({kinds:S.shape.noticeTimeline.element.shape.kinds}),ti=e.object({...S.shape,noticeTimeline:e.array(ei).min(1).max(i.actionDetail.noticeTimeline)}),ni=e=>{let{sourceTranslations:t,...n}=e;return{...n,sourceTextZh:t[`zh-Hans`]}},ri=e=>({...e,contractVersion:1,noticeTimeline:e.noticeTimeline.map(ni)}),ii=e=>({...e,noticeTimeline:e.noticeTimeline.map(ni)}),ai=(e,t)=>{for(let n of e.error?.issues??[])t.addIssue({...n})},L=$r.superRefine((e,t)=>{ai(x.safeParse(ri(e)),t)}),oi=ti.superRefine((e,t)=>{ai(S.safeParse(ii(e)),t)}),si=e.object({...He.shape,contractVersion:e.literal(2),actions:e.array(L).min(1).max(i.analysis.actions),pendingResetActions:e.array(oi).max(i.analysis.actions)}).superRefine((e,t)=>{ai(He.safeParse({...e,contractVersion:1,actions:e.actions.map(ri),pendingResetActions:e.pendingResetActions.map(ii)}),t),new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]})}),ci=e=>L.parse(e),li=e=>oi.parse(e),ui=e=>si.parse(e);function di(e){let t=ui(e);return He.parse({...t,contractVersion:1,actions:t.actions.map(ri),pendingResetActions:t.pendingResetActions.map(ii)})}const fi=e.object(L.shape).omit({actionScope:!0,reasons:!0}).extend({contractVersion:e.literal(3)}).superRefine((e,n)=>t(e,n,C)),pi=si.shape.generatedAt,mi=e.object({resetActionId:x.shape.resetActionId,effect:x.shape.resetEffects.options[0].shape.values.element.nullable(),at:pi,basis:e.enum([`execution_confirmation`,`announcement`]),sourceUrl:x.shape.noticeTimeline.element.shape.sourceUrl}),hi=e.number().int().nonnegative(),gi=e.number().finite().nonnegative();function R(e,t){try{return C(e,t)}catch{return}}function _i(e,t){return e<t?-1:+(e>t)}const vi=e.object({timeBasis:e.literal(`confirmation_priority`),startAt:pi,total:hi,hardResetCount:hi,bankedResetCount:hi,unknownCount:hi,records:e.array(mi).max(i.analysis.actions*2),intervalSummary:e.object({mean:gi,max:gi}).nullable()});function yi(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&&(_i(u.resetActionId,i.resetActionId)>0||u.resetActionId===i.resetActionId&&_i(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`])}}const z=vi.superRefine(yi),bi=e.object(si.shape).omit({analysis:!0}).extend({contractVersion:e.literal(3),statistics:z,actions:e.array(fi).min(1).max(i.analysis.actions)}).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&&pi.safeParse(i.firstAnnouncedAt).success&&pi.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`])}}),xi=e.object({contractVersion:e.literal(1),data:e.object({sourceWatermark:ie.shape.sourceWatermark,statistics:z}),meta:e.object({observedAt:pi})}),Si=e=>bi.parse(e);function Ci(e,t){let n=si.parse(e);return Si({contractVersion:3,generatedAt:n.generatedAt,statistics:t,pendingResetActions:n.pendingResetActions,actions:n.actions.map(({actionScope:e,reasons:t,...n})=>({...n,contractVersion:3}))})}const wi=e=>fi.parse(e),Ti=`/api/v1/codex-reset-public-records`,Ei=[`claude`,`antigravity`],Di=e=>`/api/v1/reset-products/${e}/public-records`,Oi=e.array(ei).min(1).max(i.actionDetail.noticeTimeline),ki=e.object(L.shape).omit({contractVersion:!0,noticeCount:!0,noticeTimeline:!0}).extend({noticeTimeline:Oi});function Ai(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 ji=e=>L.parse(Ai(e));function Mi(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 Ni=ki.superRefine((e,t)=>{Mi(e.noticeTimeline,t);let n=L.safeParse(Ai(e));for(let e of n.error?.issues??[])t.addIssue({...e})}),Pi=e.object(oi.shape).omit({state:!0,executedEffects:!0,pendingEffects:!0}).superRefine((e,t)=>{Mi(e.noticeTimeline,t)}),Fi=e.object(L.shape).pick({resetActionId:!0}).extend({lastActiveFirstAnnouncedAt:L.shape.firstAnnouncedAt,withdrawnAt:L.shape.firstAnnouncedAt}),Ii=i.analysis.actions,Li={sourceWatermark:L.shape.resetActionId,generatedAt:L.shape.firstAnnouncedAt,pendingResetActions:e.array(oi).max(Ii),unexecutedResetActions:e.array(Pi).max(Ii),withdrawnResetActions:e.array(Fi).max(Ii)};function Ri(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)Mi(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`})}const zi=e.object({contractVersion:e.literal(1),...Li,actions:e.array(Ni).min(1).max(Ii)}).superRefine(Ri),Bi=e.object({contractVersion:e.literal(1),product:e.enum(Ei),...Li,actions:e.array(Ni).max(Ii),statistics:z}).superRefine((e,t)=>{Ri(e,t);let n=new Set(e.actions.map(e=>e.resetActionId));for(let[r,i]of e.statistics.records.entries())n.has(i.resetActionId)||t.addIssue({code:`custom`,message:`product_public_records_statistics_action_missing`,path:[`statistics`,`records`,r,`resetActionId`]});if(e.product!==`antigravity`)return;let r=e=>t.addIssue({code:`custom`,message:`product_public_records_banked_reset_forbidden`,path:e});for(let[t,n]of e.actions.entries())n.resetEffects.state===`known`&&n.resetEffects.values.includes(`banked_reset`)&&r([`actions`,t,`resetEffects`,`values`]);for(let[t,n]of e.pendingResetActions.entries())n.resetEffects.state===`known`&&n.resetEffects.values.includes(`banked_reset`)&&r([`pendingResetActions`,t,`resetEffects`,`values`]);for(let[t,n]of e.statistics.records.entries())n.effect===`banked_reset`&&r([`statistics`,`records`,t,`effect`]);e.statistics.bankedResetCount!==0&&r([`statistics`,`bankedResetCount`])}),Vi=L.shape,Hi=e.strictObject({title:e.string(),body:e.string()}),Ui=e.strictObject({zh:Hi,en:Hi}),Wi=e.enum([`codex`,`claude`,`antigravity`]),Gi=e.enum([`end_preview`,`restore_preview`,`set_auto_notification`,`notify`,`confirm`]),Ki=e.strictObject({resetActionId:Vi.resetActionId,operation:Gi,expectedRevision:e.int().nonnegative(),copy:Ui.nullable(),automaticNotification:e.boolean().nullable(),executedAt:T.nullable().optional()}).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`}),e.operation!==`notify`&&e.operation!==`confirm`&&e.executedAt!=null&&t.addIssue({code:`custom`,path:[`executedAt`],message:`execution_time_operation_mismatch`})}),qi=Ki.superRefine((e,t)=>{(e.operation===`notify`||e.operation===`confirm`)&&e.executedAt==null&&t.addIssue({code:`custom`,path:[`executedAt`],message:`execution_time_required`})}),Ji=Ui.extend({zh:Hi.strip(),en:Hi.strip()}).strip(),Yi=Ki.safeExtend({copy:Ji.nullable()}).strip(),Xi=e.object({digest:e.string().regex(/^sha256:[a-f0-9]{64}$/),sourceWatermark:e.string().min(1),draft:qi.safeExtend({copy:Ji.nullable()}).strip()}),Zi=e.strictObject({operationId:e.uuid(),preview:Xi.extend({draft:qi}).strict()}),Qi=e.object({resetActionId:Vi.resetActionId,revision:e.number().int().nonnegative(),product:Wi,notificationAvailable:e.boolean(),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(Vi.noticeTimeline.element.shape.sourceUrl),availableOperations:e.array(Gi),notificationOperationId:e.uuid().nullable()}),$i=e.object({actions:e.array(Qi)}),ea=e.discriminatedUnion(`status`,[e.object({status:e.literal(`unknown`),operationId:e.uuid()}),e.object({status:e.literal(`saved`),operationId:e.uuid(),resetActionId:Vi.resetActionId,operation:Gi,revision:e.number().int().positive(),notification:e.object({state:e.enum([`disabled`,`pending`,`claimed`,`retry_wait`,`accepted`,`rejected`,`expired`]),resultCode:e.string().nullable(),diagnostic:e.record(e.string(),e.unknown()).nullable()})})]),ta=x.shape.noticeTimeline.element.shape,na=e.enum([`initial`,`supplement`,`correction`]).nullable(),ra=e.object({authoredAt:ta.authoredAt,role:na,sourceUrl:ta.sourceUrl,sourceText:ta.sourceText,sourceTextZh:ta.sourceTextZh}),ia=e.array(ra).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),!ta.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}}),aa=Qn,oa=A.omit({description:!0}).extend({category:e.literal(`improvement`),title:M,shortTitle:M.nullable().optional(),posts:ia}),sa=A.extend({category:e.enum([`direct_reset`,`reset_card`]),title:M}),ca=e.discriminatedUnion(`category`,[oa,sa]),la=nr.shape,ua=la.unassignedEntries.element.shape.date;function da(e,t){e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}const fa=e.discriminatedUnion(`category`,[oa.extend({date:ua}).superRefine(da),sa.extend({date:ua}).superRefine(da)]),pa=e.object({...la,contractVersion:e.literal(5),days:e.array(la.days.element.extend({entries:e.array(fa)})).length(28),unassignedEntries:e.array(fa)}).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)&&r.outcome!==Pn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect accepted reset and landed improvement evidence`})});function ma(e){return pa.parse(e)}const ha=`https://data.radarultra.com/activity/v3/latest.json`,ga=pa.shape,[_a,va]=ga.unassignedEntries.element.options,ya=_a.safeExtend({eventId:P}),ba=va.safeExtend({eventId:P}),xa=e.discriminatedUnion(`category`,[ya,ba]),Sa=pa.safeExtend({days:e.array(ga.days.element.extend({entries:e.array(xa)})).length(28),unassignedEntries:e.array(xa)}).superRefine((e,t)=>{ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),Ca={reactionCounts:hr,reactionTotal:e.number().int().nonnegative()},wa=(e,t)=>ar(e,t,N),Ta=e.discriminatedUnion(`category`,[ya.safeExtend(Ca).superRefine(wa),ba.safeExtend(Ca).superRefine(wa)]),Ea=Sa.safeExtend({days:e.array(ga.days.element.extend({entries:e.array(Ta)})).length(28),unassignedEntries:e.array(Ta)}),Da=I.extend({progress:Ea});async function Oa(e){return or(e,Da,F)}function ka(e){return sr(e,Da,F)}const Aa=e.discriminatedUnion(`category`,[oa,A.extend({category:e.enum([`direct_reset`,`reset_card`])})]),ja=Vr.extend({entry:Aa}),Ma=Hr.extend({contractVersion:e.literal(3),changes:e.array(ja)});function Na(e){return ja.parse(e)}function Pa(e){return Ma.parse(e)}const Fa=`https://radarultra.com`,Ia=[`zh-Hans`,`zh-Hant`,`en`,`ja`,`ko`],La={"zh-Hans":`zh-hans`,"zh-Hant":`zh-hant`,en:`en`,ja:`ja`,ko:`ko`},Ra={"zh-Hans":`/${La[`zh-Hans`]}`,"zh-Hant":`/${La[`zh-Hant`]}`,en:``,ja:`/${La.ja}`,ko:`/${La.ko}`},za=`/zh`,Ba={reset:`/codex`,improvement:`/codex/updates`,challengeRecap:`/codex/28-day-challenge`,changelog:`/codex/changelog`,models:`/codex/models`,dynamics:`/news`},Va=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}$/)})]),Ha=e.string().regex(/^(?!\.{1,2}$)[a-z0-9.-]+$/);function B(e,t){return Fa+Ra[t]+Ba[e]}function Ua(e,t){let n=t===`zh-Hans`?`/zh`:Ra[t];return Fa+n+Ba[e]}function Wa(e,t,n){let r=Va.parse({product:e,version:t});return`${B(`changelog`,n)}/${r.product}/${r.version}`}function Ga(e,t){return`${B(`models`,t)}/${Ha.parse(e)}`}const Ka=Object.freeze({timeZone:`America/Los_Angeles`,startDate:`2026-10-05`,endDate:`2026-11-01`}),qa=Date.parse(`${Ka.startDate}T00:00:00Z`),Ja=(Date.parse(`${Ka.endDate}T00:00:00Z`)-qa)/864e5+1,Ya=new Intl.DateTimeFormat(`en-CA`,{timeZone:Ka.timeZone,year:`numeric`,month:`2-digit`,day:`2-digit`});function Xa(e){let t=Ya.formatToParts(e),n=e=>Number(t.find(t=>t.type===e).value),r=(Date.UTC(n(`year`),n(`month`)-1,n(`day`))-qa)/864e5,i=r<0?`before`:r>=Ja?`ended`:`live`,a=Math.min(Ja,Math.max(1,r+1));return{phase:i,today:a,ongoingDay:i===`live`?a:null}}const Za=e.enum([`reset`,`improvement`]),Qa=e.array(Za).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),$a=e=>new Set(Ia.flatMap(t=>[B(e,t),Ua(e,t)])),eo={reset:$a(`reset`),improvement:$a(`improvement`)},to=t=>e.url().refine(e=>eo[t].has(e),`notification_target_url_invalid`),no=e.url().refine(e=>Object.values(eo).some(t=>t.has(e)),`notification_target_not_owned`),ro=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`reset`),webUrl:to(`reset`),miniPath:e.literal(`pages/index/index`)}).strict(),e.object({kind:e.literal(`improvement`),webUrl:to(`improvement`),miniPath:e.literal(`pages/index/index?page=challenge`)}).strict()]),io=e.object({topics:Qa,target:ro}).strict().refine(e=>e.topics.includes(e.target.kind),`notification_target_topic_mismatch`),ao=e.enum([`reset`,`improvement`,`clue`]),oo=e.object({topics:e.array(ao).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),target:ro}).strict().refine(e=>e.topics.some(t=>(t===`clue`?`reset`:t)===e.target.kind),`notification_target_topic_mismatch`);function so(e,t){let n=co(e===`clue`?`reset`:e,t);return oo.parse({...n,topics:[e],target:{...n.target,webUrl:Ua(n.target.kind,t)}})}function co(e,t){return io.parse({topics:[e],target:{kind:e,webUrl:B(e,t),miniPath:e===`reset`?`pages/index/index`:`pages/index/index?page=challenge`}})}const lo=e.object({notificationId:e.uuid(),eventId:e.uuid(),title:e.string().trim().min(1).max(512),createdAt:e.iso.datetime(),deliverBy:e.iso.datetime(),...io.shape,target:e.discriminatedUnion(`kind`,[ro.options[0].strip(),ro.options[1].strip()])}).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 uo(e,t){return C(e.createdAt,t.createdAt)||(e.notificationId<t.notificationId?-1:+(e.notificationId>t.notificationId))}const fo=`/api/v1/notification-tasks`,po=100,mo=e.string().min(1).max(8192),ho=e.object({cursor:mo.optional()}).strict(),go=e.object({contractVersion:e.literal(1),roundCursor:mo,notifications:e.array(lo).max(100),nextCursor:mo.nullable()}).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++)uo(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`})}),_o=`/api/browser-notifications`,vo=e.string().min(1).max(128),yo=e.uuid(),bo=e.enum(Ia),xo=e.strictObject({reset:e.boolean(),improvement:e.boolean()}),So=`[cdef][\\w-]{21}`,Co=e.strictObject({fid:e.string().regex(RegExp(`^${So}$`))});function wo(e){return e.replace(RegExp(`(^|[^\\w-])${So}(?![\\w-])`,`g`),`$1[registration]`)}const V={operationId:yo,expectedRevision:vo},To=e.discriminatedUnion(`action`,[e.strictObject({...V,action:e.literal(`register`),topics:xo.refine(e=>e.reset||e.improvement,`subscription_topic_required`),locale:bo,registration:Co}),e.strictObject({...V,action:e.literal(`set_topics`),topics:xo}),e.strictObject({...V,action:e.literal(`set_locale`),locale:bo}),e.strictObject({...V,action:e.literal(`restore`),registration:Co}),e.strictObject({...V,action:e.literal(`retry`)}),e.strictObject({...V,action:e.literal(`cancel`)})]),Eo=e.strictObject({operationId:yo.optional(),expectedRevision:vo.optional()}).refine(e=>e.operationId===void 0==(e.expectedRevision===void 0),`subscription_operation_reference_incomplete`),Do=e.object({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:yo.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())}),Oo=e.object({id:yo,state:e.enum([`pending`,`applied`,`rejected`,`unknown`,`superseded`,`not_found`]),error:Do.optional()}),ko=e.object({topicSettings:e.object({state:e.enum([`initial`,`saved`]),revision:vo,topics:xo.strip(),locale:bo.nullable()}),registrationState:e.enum([`none`,`ready`,`invalid`,`changing`]),registrationKey:e.string().regex(/^[a-f0-9]{64}$/).nullable(),manualRetryRequired:e.boolean(),operation:Oo.nullable()});function Ao(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 jo=e.object({data:ko}),Mo=e.object({error:Do});function No(e){return{topicSettings:{state:`initial`,revision:e,topics:{reset:!0,improvement:!1},locale:null},registrationState:`none`,registrationKey:null,manualRetryRequired:!1,operation:null}}const Po=xo.extend({clue:e.boolean().default(!1)}),[Fo,Io,...Lo]=To.options,Ro=e.discriminatedUnion(`action`,[Fo.extend({topics:Po.refine(e=>Object.values(e).some(Boolean),`subscription_topic_required`)}),Io.extend({topics:Po}),...Lo]),zo=ko.extend({topicSettings:ko.shape.topicSettings.extend({topics:Po.strip()})}),Bo=e.object({data:zo});function Vo(e){return zo.parse(No(e))}function Ho(e){let{clue:t,...n}=e.topicSettings.topics;return ko.parse({...e,topicSettings:{...e.topicSettings,topics:n}})}function Uo(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 Wo=20,Go=2*1024*1024,Ko=`/api/v1/improvements`,qo=e.string().min(1).max(1024),[Jo]=Sa.shape.unassignedEntries.element.options,Yo=Jo.safeExtend({date:e.iso.date().refine(e=>e>Ka.endDate,`improvement_must_follow_campaign`)}),Xo=e.strictObject({}),Zo=e.object({challengeEnded:e.boolean(),observedAt:e.iso.datetime()}),Qo=e.strictObject({cursor:qo.nullable(),limit:e.literal(20)}),$o=Zo.extend({entries:e.array(Yo).max(20),nextCursor:qo.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`})}),es=e.strictObject({eventIds:e.array(P).min(1).max(128)}),ts=e.object({eventIds:e.array(P).max(128)}),ns=e.object({error:e.object({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())})}),rs=`/tibo-source/v1/latest.json`,is=512*1024,as=e.iso.datetime({offset:!0}),os=x.shape.noticeTimeline.element,ss=e.object({contractVersion:e.literal(1),observedAt:as,check:e.object({checkedAt:as,freshUntil:as,active:e.boolean()}).nullable(),latestPost:e.object({authoredAt:as,sourceUrl:os.shape.sourceUrl,sourceText:e.string(),sourceTranslations:Zr,resetRelevance:e.enum([`related`,`unrelated`,`unknown`])}).nullable()});async function cs(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 ss.parse(JSON.parse(o))}const ls=`/reset-clue/v1/latest.json`,us=4320*60*1e3,ds=i.exportUtf8Bytes,fs=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}).superRefine((e,t)=>{Date.parse(e.expiresAt)!==Date.parse(e.authoredAt)+2592e5&&t.addIssue({code:`custom`,message:`reset_clue_expiry_mismatch`,path:[`expiresAt`]})}),ps=e.object({contractVersion:e.literal(1),clue:fs.nullable()}),ms=e=>ps.parse(e);function hs(e,t){return e.clue!==null&&t.getTime()<Date.parse(e.clue.expiresAt)?e.clue:null}async function gs(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>ds)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 ms(JSON.parse(o))}const H=e.enum(Ia),U=e.string().regex(/^\d{4}-(?:0[1-9]|1[0-2])$/),W=e.string().trim().min(1),G=e.url({protocol:/^https$/}),K=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`instant`),at:e.iso.datetime()}),e.object({kind:e.literal(`date`),date:e.iso.date()})]),_s=e.object({operation:W,stage:W,cause:qt});function vs(t){return e.discriminatedUnion(`state`,[e.object({state:e.literal(`ready`),value:t}),e.object({state:e.literal(`pending`)}),e.object({state:e.literal(`failed`),failure:_s})])}function q(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 J(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 ys=`/codex-releases/v2/directory.json`,bs=128*1024,xs=128*1024,Ss=256*1024,Cs=K,ws={product:e.enum([`app`,`cli`]),version:W,published:K,month:U,revision:W},Ts=e.object(ws).superRefine(Es);function Es(e,t){let n=Va.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 Ds(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 Os=q(e.object({contractVersion:e.literal(2),releases:e.array(Ts),latest:e.object({app:e.string().nullable(),cli:e.string().nullable()})}).superRefine((e,t)=>{Ds(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`})}}),bs),ks=e.object({state:e.literal(`not_applicable`),reason:e.literal(`no_curated_notes`)}),As=e.union([vs(e.object({locale:H,points:e.array(W).min(1).max(5)})),ks]),js=e.object({...ws,source:e.object({kind:e.enum([`github`,`official`]),url:G}),summary:As,notesCount:e.number().int().nonnegative()}).superRefine((e,t)=>{Es(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=q(e.object({contractVersion:e.literal(2),locale:H,month:U,releases:e.array(js)}).superRefine((e,t)=>{Ds(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`})}),xs),Ns=e.array(e.object({title:W.nullable(),items:e.array(e.object({text:W,refs:W.nullable()})).min(1)})).min(1),Ps=q(e.object({contractVersion:e.literal(2),product:e.enum([`app`,`cli`]),version:W,revision:W,locale:H,original:e.array(Ns.element),translation:e.union([vs(Ns),ks]).nullable()}).superRefine((e,t)=>{let n=Va.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`})}}),Ss),Fs=e=>Os.parse(e),Is=e=>Ms.parse(e),Ls=e=>Ps.parse(e),Rs=e=>J(e,`codex_release_directory`,bs,Os),zs=e=>J(e,`codex_release_month`,xs,Ms),Bs=e=>J(e,`codex_release_notes`,Ss,Ps);function Vs(e,t){return`/codex-releases/v2/${H.parse(e)}/${U.parse(t)}.json`}function Hs(e,t,n){let r=Va.parse({product:t,version:n});return`/codex-releases/v2/${H.parse(e)}/notes/${r.product}/${r.version}.json`}const Us=128*1024;function Y(t){return e.discriminatedUnion(`state`,[e.object({state:e.literal(`known`),value:t,source:G}),e.object({state:e.literal(`unavailable`),reason:e.enum([`not_announced`,`not_listed`]),source:G.nullable()})])}const Ws=e.object({input:W,cached:W,output:W}),Gs=e.object({modelId:Ha,name:W,group:e.enum([`current`,`retired`]),status:e.enum([`available`,`retiring`,`retired`]),launched:Y(K),chatgptRetirement:Y(K),apiRetirement:Y(K),credits:Y(Ws),apiPrice:Y(Ws),multiple:e.string().regex(/^(?:0|[1-9]\d*)(?:\.\d+)?$/).refine(e=>Number.isFinite(Number(e))&&Number(e)>0).nullable(),plans:Y(e.array(W).min(1)),surfaces:Y(e.array(W).min(1)),about:vs(e.object({locale:H,paragraphs:e.array(W).min(1)})),sources:e.array(e.object({label:W,url:G})).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`})}),Ks=q(e.object({contractVersion:e.literal(1),locale:H,models:e.array(Gs),multipleBase:e.object({modelId:Ha,name:W}).nullable(),upcomingRetirement:e.object({names:W,modelIds:e.array(Ha).min(1),surface:e.enum([`api`,`chatgpt`]),at:K}).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`})}}}),Us),qs=e=>Ks.parse(e),Js=e=>J(e,`codex_models`,Us,Ks),Ys=e=>`/codex-models/v1/${H.parse(e)}.json`;function Xs(e){let[t=``,n=``]=e.replace(/Z$/,``).split(`.`);return`${t.length===16?t+`:00`:t}.${n.replace(/0+$/,``)}`}function X(e,t){let n=Xs(e),r=Xs(t);return n<r?-1:+(n>r)}function Zs(e,t){let n=Date.parse(e);return Number.isFinite(n)?new Date(n-t*864e5).toISOString().slice(0,19)+Xs(e).slice(19)+`Z`:e}function Qs(e,t,n){return e.length===10?e>=t.slice(0,10)&&e<=n.slice(0,10):X(e,t)>=0&&X(e,n)<=0}function $s(e,t,n=`primary`){(n===`primary`?X(e.occurredAt,e.primary.authoredAt)===0:X(e.occurredAt,e.primary.authoredAt)<=0&&[e.primary,...e.otherSources].some(t=>X(e.occurredAt,t.authoredAt)===0))||t.addIssue({code:`custom`,path:[`occurredAt`],message:`entry_primary_time_mismatch`}),X(e.updatedAt,e.occurredAt)<0&&t.addIssue({code:`custom`,path:[`updatedAt`],message:`entry_update_before_occurrence`});let r=new Set([e.primary.url]);for(let[n,i]of e.otherSources.entries()){r.has(i.url)&&t.addIssue({code:`custom`,path:[`otherSources`,n,`url`],message:`duplicate_source_url`}),r.add(i.url);let a=e.otherSources.at(n-1);n>0&&a&&X(a.authoredAt,i.authoredAt)>0&&t.addIssue({code:`custom`,path:[`otherSources`,n],message:`source_order_mismatch`})}for(let[n,r]of(e.followUps??[]).entries()){let i=e.followUps?.at(n-1);n>0&&i&&X(i.at,r.at)>0&&t.addIssue({code:`custom`,path:[`followUps`,n],message:`follow_up_order_mismatch`})}if(e.leak!==null){let n=e.leak;n&&n.state===`unconfirmed`&&n.url!==void 0&&n.reportedAt!==void 0&&(e.primary.url!==n.url||X(e.occurredAt,n.reportedAt)!==0)&&t.addIssue({code:`custom`,path:[`leak`],message:`unconfirmed_leak_primary_mismatch`}),n&&n.state===`confirmed`&&n.url!==void 0&&e.primary.url===n.url&&t.addIssue({code:`custom`,path:[`leak`],message:`confirmed_leak_primary_mismatch`})}}function ec(e,t){return X(t.occurredAt,e.occurredAt)||(e.id<t.id?-1:+(e.id>t.id))}function tc(e,t){let n=new Set;for(let[r,i]of e.entries()){n.has(i.id)&&t.addIssue({code:`custom`,path:[`entries`,r,`id`],message:`duplicate_entry`}),n.add(i.id);let a=e.at(r-1);r>0&&a&&ec(a,i)>0&&t.addIssue({code:`custom`,path:[`entries`,r],message:`entry_order_mismatch`})}}function nc(e,t,n=30){tc(e.entries,t);let r=Zs(e.generatedAt,7),i=Zs(e.generatedAt,n),a=e.entries.filter(t=>Qs(t.occurredAt,r,e.generatedAt));(e.overview.weekCount!==a.length||e.overview.unconfirmedLeakCount!==a.filter(e=>e.leak?.state===`unconfirmed`).length||e.overview.miniProgramHiddenWeekCount!==a.filter(e=>e.miniProgramHidden).length)&&t.addIssue({code:`custom`,path:[`overview`],message:`overview_entries_mismatch`}),(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[n,r]of e.entries.entries())(!Qs(r.occurredAt,i,e.generatedAt)||!e.coverage.months.includes(r.occurredAt.slice(0,7))||r.occurredAt.slice(0,10)<e.coverage.from)&&t.addIssue({code:`custom`,path:[`entries`,n],message:`entry_coverage_mismatch`})}function rc(e,t){tc(e.entries,t),e.entries.some(t=>t.occurredAt.slice(0,7)!==e.month)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_month_mismatch`})}const ic=256*1024,ac=512*1024,oc=3600*1e3,sc=e.enum([`model`,`product`,`pricing`,`security`,`policy`,`industry`,`controversy`]),Z=e.string().trim().min(1),Q=e.object({zh:Z.max(200),en:Z.max(200)}),cc=e.object({what:Z.max(400),scale:Z.max(400),stakes:Z.max(400)}),lc=e.discriminatedUnion(`form`,[e.object({form:e.literal(`line`),zh:Z.max(600),en:Z.max(600)}),e.object({form:e.literal(`explained`),zh:cc,en:cc})]),$=e.union([e.iso.date(),e.iso.datetime()]),uc=e.object({url:G,label:Z.max(120),authoredAt:$}),dc=e.object({at:$,title:Q,url:G}),fc=e.object({state:e.enum([`unconfirmed`,`confirmed`]),reportedAt:$,url:G,label:Z.max(120)});function pc(e,t){if(e.length===10)return{dateKey:e,instant:null};let n=new Intl.DateTimeFormat(`en-CA`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`}).formatToParts(new Date(e)),r=e=>n.find(t=>t.type===e)?.value;return{dateKey:`${r(`year`)}-${r(`month`)}-${r(`day`)}`,instant:e}}function mc(e,t,n){return Qs(e,t,n)}const hc=X,gc=e.object({id:e.string().regex(/^evt_[A-Za-z0-9_-]{1,64}$/),kind:sc,title:Q,summary:lc,occurredAt:$,shortTitle:Q.nullable().optional(),primary:uc,otherSources:e.array(uc),followUps:e.array(dc),leak:fc.nullable(),miniProgramHidden:e.boolean(),updatedAt:e.iso.datetime()}).superRefine($s);function _c(e,t){return ec(e,t)}const vc=q(e.object({contractVersion:e.literal(1),generatedAt:e.iso.datetime(),overview:e.object({weekCount:e.number().int().nonnegative(),unconfirmedLeakCount:e.number().int().nonnegative(),miniProgramHiddenWeekCount:e.number().int().nonnegative()}),latestSourceSuccessAt:e.iso.datetime().nullable(),coverage:e.object({from:e.iso.date(),months:e.array(U)}),entries:e.array(gc)}).superRefine(nc),ic),yc=q(e.object({contractVersion:e.literal(1),month:U,entries:e.array(gc)}).superRefine(rc),ac),bc=()=>`/ai-radar/v1/latest.json`,xc=e=>`/ai-radar/v1/${U.parse(e)}.json`,Sc=e=>vc.parse(e),Cc=e=>yc.parse(e),wc=e=>J(e,`ai_radar_latest`,ic,vc),Tc=e=>J(e,`ai_radar_month`,ac,yc),Ec=e=>e===`zh-Hans`?`zh`:`en`;function Dc(e,t){return e.latestSourceSuccessAt===null||X(e.latestSourceSuccessAt,new Date(t-36e5).toISOString())<0}const Oc=ic,kc=ac,Ac=64*1024,jc=[`codex`,`claude`,`antigravity`],Mc=e.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/),Nc=e.string().refine(e=>{let t=e.split(`
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.object({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),An=e.iso.date(),A=e.object({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.object({state:e.literal(`ready`),text:kn}),e.object({state:e.enum([`pending`,`failed`,`not_applicable`]),text:e.null()})]),j=e.object({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.object({hasPending:e.boolean(),hasFailures:e.boolean()}),days:e.array(e.object({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.some(e=>e.category===`improvement`&&e.deliveryState===`landed`),n=e.some(e=>e.category!==`improvement`);return t?n?`both`:`improvement`:n?`reset`:`unconfirmed`}function Pn(e){return Nn(e.filter(e=>e.deliveryState===`landed`))}const Fn=524288,In=j.shape,Ln=In.days.element,Rn=A.extend({date:In.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`})}),zn=e.object({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`})}),Bn=Ln.omit({date:!0,entries:!0}).extend({entries:e.array(Rn),lifecycle:zn}),Vn=e.object({contractVersion:e.literal(2),generatedAt:In.generatedAt,timeZone:In.timeZone,processing:In.processing,days:e.array(Bn).length(28),unassignedEntries:e.array(Rn)}).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=Pn(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 Hn(e){return Vn.parse(e)}const Un=Fn,M=e.object({en:e.string().trim().min(1),zh:e.string().trim().min(1)}),Wn=A.extend({title:M}),Gn=Vn.shape,Kn=Gn.days.element,qn=Kn.shape.entries.element.safeExtend({title:M}),Jn=Kn.extend({title:M.nullable(),entries:e.array(qn)}).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`})}),Yn=e.object({...Gn,contractVersion:e.literal(3),days:e.array(Jn),unassignedEntries:e.array(qn)}).superRefine((e,t)=>{let n=Vn.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 Xn(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 Zn(e){return Yn.parse(e)}const Qn=Un,$n=Vn.shape,er=Yn.shape.unassignedEntries,tr=$n.days.element.omit({summary:!0}).extend({entries:er}),nr=e.object({...$n,contractVersion:e.literal(4),days:e.array(tr).length(28),unassignedEntries:er}).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!==Pn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect landed evidence`})});function rr(e){return nr.parse(e)}function ir(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 ar(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 or(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 sr(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=[`👍`,`😂`,`🤡`,`💀`,`😭`,`🔥`,`🎉`,`👀`,`🙏`,`🫠`],cr=e.enum(N),P=e.string().min(1).max(128),F=524288,lr=`https://data.radarultra.com/activity/v1/latest.json`,ur=`https://data.radarultra.com/activity/v2/latest.json`,dr=A.extend({eventId:P}),fr=j.safeExtend({days:e.array(j.shape.days.element.extend({entries:e.array(dr)})).length(28),undatedEntries:e.array(dr)});function pr(e,t){ir([...e.days.flatMap(e=>e.entries),...e.undatedEntries],t)}const mr=fr.superRefine(pr),hr=e.record(cr,e.number().int().nonnegative()),gr=e.object({reactionCounts:hr,reactionTotal:e.number().int().nonnegative()});function _r(e,t){ar(e,t,N)}const vr=dr.extend(gr.shape).superRefine(_r),yr=fr.safeExtend({days:e.array(fr.shape.days.element.extend({entries:e.array(vr)})).length(28),undatedEntries:e.array(vr)}).superRefine(pr),I=e.object({publishedAt:e.iso.datetime(),reactionIds:e.array(cr).length(N.length).refine(e=>new Set(e).size===N.length,`Every reaction must occur exactly once`),progress:yr}),br=Yn.shape,xr=br.unassignedEntries.element.safeExtend({eventId:P}),Sr=e.object({...br,days:e.array(br.days.element.safeExtend({entries:e.array(xr)})).length(28),unassignedEntries:e.array(xr)}),Cr=Sr.superRefine((e,t)=>{let n=({eventId:e,...t})=>t,r=Yn.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});ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),wr=xr.safeExtend(gr.shape).superRefine(_r),Tr=Sr.safeExtend({days:e.array(br.days.element.safeExtend({entries:e.array(wr)})).length(28),unassignedEntries:e.array(wr)}).superRefine((e,t)=>{let n=({reactionCounts:e,reactionTotal:t,...n})=>n,r=Cr.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})}),Er=I.extend({progress:Tr}),Dr=nr.shape,Or=Dr.unassignedEntries.element.safeExtend({eventId:P}),kr=nr.safeExtend({days:e.array(Dr.days.element.safeExtend({entries:e.array(Or)})).length(28),unassignedEntries:e.array(Or)}).superRefine((e,t)=>{ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),Ar=Or.safeExtend(gr.shape).superRefine(_r),jr=kr.safeExtend({days:e.array(Dr.days.element.safeExtend({entries:e.array(Ar)})).length(28),unassignedEntries:e.array(Ar)}),Mr=I.extend({progress:jr});async function Nr(e){return or(e,I,F)}async function Pr(e){return or(e,Er,F)}async function Fr(e){return or(e,Mr,F)}function Ir(e){return sr(e,I,F)}function Lr(e){return sr(e,Er,F)}function Rr(e){return sr(e,Mr,F)}const zr=e.object({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()}),Br=e.object({contractVersion:e.literal(1),changes:e.array(zr),nextCursor:e.string().min(1),hasMore:e.boolean()}),Vr=zr.extend({dayNumber:j.shape.days.element.shape.dayNumber.nullable()}),Hr=Br.extend({contractVersion:e.literal(2),changes:e.array(Vr)}),Ur=e.int().min(0).max(2**53-1),Wr=e.int().min(1).max(28),Gr=e.enum([`yes`,`no`]).nullable(),Kr=e.object({choice:Gr}).strict(),qr=e.object({yes:Ur,no:Ur,total:Ur}).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.`})}),Jr=e.object({dayNumber:Wr,state:e.enum([`unopened`,`open`,`closed`]),choice:Gr,outcome:e.enum([`unconfirmed`,`yes`,`no`]),personalResult:e.enum([`none`,`waiting`,`correct`,`incorrect`]),corrected:e.boolean(),counts:qr}).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.`})}),Yr=e.object({revision:Ur,openDayNumber:Wr.nullable(),days:e.array(Jr).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.`})}}),Xr=e.object({error:e.object({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.`})}),Zr=e.object({"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}),Qr=x.shape.noticeTimeline.element.omit({sourceTextZh:!0}).extend({sourceTranslations:Zr}),$r=e.object({...x.shape,contractVersion:e.literal(2),noticeTimeline:e.array(Qr).min(1).max(i.actionDetail.noticeTimeline)}),ei=Qr.omit({phase:!0}).extend({kinds:S.shape.noticeTimeline.element.shape.kinds}),ti=e.object({...S.shape,noticeTimeline:e.array(ei).min(1).max(i.actionDetail.noticeTimeline)}),ni=e=>{let{sourceTranslations:t,...n}=e;return{...n,sourceTextZh:t[`zh-Hans`]}},ri=e=>({...e,contractVersion:1,noticeTimeline:e.noticeTimeline.map(ni)}),ii=e=>({...e,noticeTimeline:e.noticeTimeline.map(ni)}),ai=(e,t)=>{for(let n of e.error?.issues??[])t.addIssue({...n})},L=$r.superRefine((e,t)=>{ai(x.safeParse(ri(e)),t)}),oi=ti.superRefine((e,t)=>{ai(S.safeParse(ii(e)),t)}),si=e.object({...He.shape,contractVersion:e.literal(2),actions:e.array(L).min(1).max(i.analysis.actions),pendingResetActions:e.array(oi).max(i.analysis.actions)}).superRefine((e,t)=>{ai(He.safeParse({...e,contractVersion:1,actions:e.actions.map(ri),pendingResetActions:e.pendingResetActions.map(ii)}),t),new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&t.addIssue({code:`custom`,message:`export_utf8_size_limit_exceeded`,path:[]})}),ci=e=>L.parse(e),li=e=>oi.parse(e),ui=e=>si.parse(e);function di(e){let t=ui(e);return He.parse({...t,contractVersion:1,actions:t.actions.map(ri),pendingResetActions:t.pendingResetActions.map(ii)})}const fi=e.object(L.shape).omit({actionScope:!0,reasons:!0}).extend({contractVersion:e.literal(3)}).superRefine((e,n)=>t(e,n,C)),pi=si.shape.generatedAt,mi=e.object({resetActionId:x.shape.resetActionId,effect:x.shape.resetEffects.options[0].shape.values.element.nullable(),at:pi,basis:e.enum([`execution_confirmation`,`announcement`]),sourceUrl:x.shape.noticeTimeline.element.shape.sourceUrl}),hi=e.number().int().nonnegative(),gi=e.number().finite().nonnegative();function R(e,t){try{return C(e,t)}catch{return}}function _i(e,t){return e<t?-1:+(e>t)}const vi=e.object({timeBasis:e.literal(`confirmation_priority`),startAt:pi,total:hi,hardResetCount:hi,bankedResetCount:hi,unknownCount:hi,records:e.array(mi).max(i.analysis.actions*2),intervalSummary:e.object({mean:gi,max:gi}).nullable()});function yi(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&&(_i(u.resetActionId,i.resetActionId)>0||u.resetActionId===i.resetActionId&&_i(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`])}}const z=vi.superRefine(yi),bi=e.object(si.shape).omit({analysis:!0}).extend({contractVersion:e.literal(3),statistics:z,actions:e.array(fi).min(1).max(i.analysis.actions)}).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&&pi.safeParse(i.firstAnnouncedAt).success&&pi.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`])}}),xi=e.object({contractVersion:e.literal(1),data:e.object({sourceWatermark:ie.shape.sourceWatermark,statistics:z}),meta:e.object({observedAt:pi})}),Si=e=>bi.parse(e);function Ci(e,t){let n=si.parse(e);return Si({contractVersion:3,generatedAt:n.generatedAt,statistics:t,pendingResetActions:n.pendingResetActions,actions:n.actions.map(({actionScope:e,reasons:t,...n})=>({...n,contractVersion:3}))})}const wi=e=>fi.parse(e),Ti=`/api/v1/codex-reset-public-records`,Ei=[`claude`,`antigravity`],Di=e=>`/api/v1/reset-products/${e}/public-records`,Oi=e.array(ei).min(1).max(i.actionDetail.noticeTimeline),ki=e.object(L.shape).omit({contractVersion:!0,noticeCount:!0,noticeTimeline:!0}).extend({noticeTimeline:Oi});function Ai(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 ji=e=>L.parse(Ai(e));function Mi(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 Ni=ki.superRefine((e,t)=>{Mi(e.noticeTimeline,t);let n=L.safeParse(Ai(e));for(let e of n.error?.issues??[])t.addIssue({...e})}),Pi=e.object(oi.shape).omit({state:!0,executedEffects:!0,pendingEffects:!0}).superRefine((e,t)=>{Mi(e.noticeTimeline,t)}),Fi=e.object(L.shape).pick({resetActionId:!0}).extend({lastActiveFirstAnnouncedAt:L.shape.firstAnnouncedAt,withdrawnAt:L.shape.firstAnnouncedAt}),Ii=i.analysis.actions,Li={sourceWatermark:L.shape.resetActionId,generatedAt:L.shape.firstAnnouncedAt,pendingResetActions:e.array(oi).max(Ii),unexecutedResetActions:e.array(Pi).max(Ii),withdrawnResetActions:e.array(Fi).max(Ii)};function Ri(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)Mi(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`})}const zi=e.object({contractVersion:e.literal(1),...Li,actions:e.array(Ni).min(1).max(Ii)}).superRefine(Ri),Bi=e.object({contractVersion:e.literal(1),product:e.enum(Ei),...Li,actions:e.array(Ni).max(Ii),statistics:z}).superRefine((e,t)=>{Ri(e,t);let n=new Set(e.actions.map(e=>e.resetActionId));for(let[r,i]of e.statistics.records.entries())n.has(i.resetActionId)||t.addIssue({code:`custom`,message:`product_public_records_statistics_action_missing`,path:[`statistics`,`records`,r,`resetActionId`]});if(e.product!==`antigravity`)return;let r=e=>t.addIssue({code:`custom`,message:`product_public_records_banked_reset_forbidden`,path:e});for(let[t,n]of e.actions.entries())n.resetEffects.state===`known`&&n.resetEffects.values.includes(`banked_reset`)&&r([`actions`,t,`resetEffects`,`values`]);for(let[t,n]of e.pendingResetActions.entries())n.resetEffects.state===`known`&&n.resetEffects.values.includes(`banked_reset`)&&r([`pendingResetActions`,t,`resetEffects`,`values`]);for(let[t,n]of e.statistics.records.entries())n.effect===`banked_reset`&&r([`statistics`,`records`,t,`effect`]);e.statistics.bankedResetCount!==0&&r([`statistics`,`bankedResetCount`])}),Vi=L.shape,Hi=e.strictObject({title:e.string(),body:e.string()}),Ui=e.strictObject({zh:Hi,en:Hi}),Wi=e.enum([`codex`,`claude`,`antigravity`]),Gi=e.enum([`end_preview`,`restore_preview`,`set_auto_notification`,`notify`,`confirm`]),Ki=e.strictObject({resetActionId:Vi.resetActionId,operation:Gi,expectedRevision:e.int().nonnegative(),copy:Ui.nullable(),automaticNotification:e.boolean().nullable(),executedAt:T.nullable().optional()}).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`}),e.operation!==`notify`&&e.operation!==`confirm`&&e.executedAt!=null&&t.addIssue({code:`custom`,path:[`executedAt`],message:`execution_time_operation_mismatch`})}),qi=Ki.superRefine((e,t)=>{(e.operation===`notify`||e.operation===`confirm`)&&e.executedAt==null&&t.addIssue({code:`custom`,path:[`executedAt`],message:`execution_time_required`})}),Ji=Ui.extend({zh:Hi.strip(),en:Hi.strip()}).strip(),Yi=Ki.safeExtend({copy:Ji.nullable()}).strip(),Xi=e.object({digest:e.string().regex(/^sha256:[a-f0-9]{64}$/),sourceWatermark:e.string().min(1),draft:qi.safeExtend({copy:Ji.nullable()}).strip()}),Zi=e.strictObject({operationId:e.uuid(),preview:Xi.extend({draft:qi}).strict()}),Qi=e.object({resetActionId:Vi.resetActionId,revision:e.number().int().nonnegative(),product:Wi,notificationAvailable:e.boolean(),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(Vi.noticeTimeline.element.shape.sourceUrl),availableOperations:e.array(Gi),notificationOperationId:e.uuid().nullable()}),$i=e.object({actions:e.array(Qi)}),ea=e.discriminatedUnion(`status`,[e.object({status:e.literal(`unknown`),operationId:e.uuid()}),e.object({status:e.literal(`saved`),operationId:e.uuid(),resetActionId:Vi.resetActionId,operation:Gi,revision:e.number().int().positive(),notification:e.object({state:e.enum([`disabled`,`pending`,`claimed`,`retry_wait`,`accepted`,`rejected`,`expired`]),resultCode:e.string().nullable(),diagnostic:e.record(e.string(),e.unknown()).nullable()})})]),ta=x.shape.noticeTimeline.element.shape,na=e.enum([`initial`,`supplement`,`correction`]).nullable(),ra=e.object({authoredAt:ta.authoredAt,role:na,sourceUrl:ta.sourceUrl,sourceText:ta.sourceText,sourceTextZh:ta.sourceTextZh}),ia=e.array(ra).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),!ta.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}}),aa=Qn,oa=A.omit({description:!0}).extend({category:e.literal(`improvement`),title:M,shortTitle:M.nullable().optional(),posts:ia}),sa=A.extend({category:e.enum([`direct_reset`,`reset_card`]),title:M}),ca=e.discriminatedUnion(`category`,[oa,sa]),la=nr.shape,ua=la.unassignedEntries.element.shape.date;function da(e,t){e.date===null!=(e.dateBasis===`unresolved`)&&t.addIssue({code:`custom`,path:[`date`],message:`Date must agree with its evidence basis`})}const fa=e.discriminatedUnion(`category`,[oa.extend({date:ua}).superRefine(da),sa.extend({date:ua}).superRefine(da)]),pa=e.object({...la,contractVersion:e.literal(5),days:e.array(la.days.element.extend({entries:e.array(fa)})).length(28),unassignedEntries:e.array(fa)}).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)&&r.outcome!==Pn(r.entries)&&t.addIssue({code:`custom`,path:[`days`,n],message:`Outcome must reflect accepted reset and landed improvement evidence`})});function ma(e){return pa.parse(e)}const ha=`https://data.radarultra.com/activity/v3/latest.json`,ga=pa.shape,[_a,va]=ga.unassignedEntries.element.options,ya=_a.safeExtend({eventId:P}),ba=va.safeExtend({eventId:P}),xa=e.discriminatedUnion(`category`,[ya,ba]),Sa=pa.safeExtend({days:e.array(ga.days.element.extend({entries:e.array(xa)})).length(28),unassignedEntries:e.array(xa)}).superRefine((e,t)=>{ir([...e.days.flatMap(e=>e.entries),...e.unassignedEntries],t)}),Ca={reactionCounts:hr,reactionTotal:e.number().int().nonnegative()},wa=(e,t)=>ar(e,t,N),Ta=e.discriminatedUnion(`category`,[ya.safeExtend(Ca).superRefine(wa),ba.safeExtend(Ca).superRefine(wa)]),Ea=Sa.safeExtend({days:e.array(ga.days.element.extend({entries:e.array(Ta)})).length(28),unassignedEntries:e.array(Ta)}),Da=I.extend({progress:Ea});async function Oa(e){return or(e,Da,F)}function ka(e){return sr(e,Da,F)}const Aa=e.discriminatedUnion(`category`,[oa,A.extend({category:e.enum([`direct_reset`,`reset_card`])})]),ja=Vr.extend({entry:Aa}),Ma=Hr.extend({contractVersion:e.literal(3),changes:e.array(ja)});function Na(e){return ja.parse(e)}function Pa(e){return Ma.parse(e)}const Fa=`https://radarultra.com`,Ia=[`zh-Hans`,`zh-Hant`,`en`,`ja`,`ko`],La={"zh-Hans":`zh-hans`,"zh-Hant":`zh-hant`,en:`en`,ja:`ja`,ko:`ko`},Ra={"zh-Hans":`/${La[`zh-Hans`]}`,"zh-Hant":`/${La[`zh-Hant`]}`,en:``,ja:`/${La.ja}`,ko:`/${La.ko}`},za=`/zh`,Ba={reset:`/codex`,improvement:`/codex/updates`,challengeRecap:`/codex/28-day-challenge`,changelog:`/codex/changelog`,models:`/codex/models`,dynamics:`/news`},Va=e.enum([`codex`,`claude`,`antigravity`]),Ha=e.enum([`app`,`cli`]),Ua=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}$/)})]),Wa=e.discriminatedUnion(`product`,[e.strictObject({product:e.literal(`cli`),version:e.string().regex(/^\d+\.\d+\.\d+$/)})]),Ga=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+\.\d+\.\d+$/)})]);function Ka(e){return e===`codex`?Ua:e===`claude`?Wa:Ga}const qa=e.string().regex(/^(?!\.{1,2}$)[a-z0-9.-]+$/);function Ja(e,t){return Fa+Ra[t]+Ba[e]}function Ya(e,t){let n=t===`zh-Hans`?`/zh`:Ra[t];return Fa+n+Ba[e]}const Xa=(e,t,n)=>Za(`codex`,e,t,n);function Za(e,t,n,r){let i=Ka(e).parse({product:t,version:n});return`${Fa+Ra[r]}/${e}/changelog/${i.product}/${i.version}`}function Qa(e,t){return`${Ja(`models`,t)}/${qa.parse(e)}`}const $a=Object.freeze({timeZone:`America/Los_Angeles`,startDate:`2026-10-05`,endDate:`2026-11-01`}),eo=Date.parse(`${$a.startDate}T00:00:00Z`),to=(Date.parse(`${$a.endDate}T00:00:00Z`)-eo)/864e5+1,no=new Intl.DateTimeFormat(`en-CA`,{timeZone:$a.timeZone,year:`numeric`,month:`2-digit`,day:`2-digit`});function ro(e){let t=no.formatToParts(e),n=e=>Number(t.find(t=>t.type===e).value),r=(Date.UTC(n(`year`),n(`month`)-1,n(`day`))-eo)/864e5,i=r<0?`before`:r>=to?`ended`:`live`,a=Math.min(to,Math.max(1,r+1));return{phase:i,today:a,ongoingDay:i===`live`?a:null}}const io=e.enum([`reset`,`improvement`]),ao=e.array(io).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),oo=e=>new Set(Ia.flatMap(t=>[Ja(e,t),Ya(e,t)])),so={reset:oo(`reset`),improvement:oo(`improvement`)},co=t=>e.url().refine(e=>so[t].has(e),`notification_target_url_invalid`),lo=e.url().refine(e=>Object.values(so).some(t=>t.has(e)),`notification_target_not_owned`),uo=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`reset`),webUrl:co(`reset`),miniPath:e.literal(`pages/index/index`)}).strict(),e.object({kind:e.literal(`improvement`),webUrl:co(`improvement`),miniPath:e.literal(`pages/index/index?page=challenge`)}).strict()]),fo=e.object({topics:ao,target:uo}).strict().refine(e=>e.topics.includes(e.target.kind),`notification_target_topic_mismatch`),po=e.enum([`reset`,`improvement`,`clue`]),mo=e.object({topics:e.array(po).min(1).max(2).refine(e=>new Set(e).size===e.length,`notification_topic_duplicate`),target:uo}).strict().refine(e=>e.topics.some(t=>(t===`clue`?`reset`:t)===e.target.kind),`notification_target_topic_mismatch`);function ho(e,t){let n=go(e===`clue`?`reset`:e,t);return mo.parse({...n,topics:[e],target:{...n.target,webUrl:Ya(n.target.kind,t)}})}function go(e,t){return fo.parse({topics:[e],target:{kind:e,webUrl:Ja(e,t),miniPath:e===`reset`?`pages/index/index`:`pages/index/index?page=challenge`}})}const _o=e.object({notificationId:e.uuid(),eventId:e.uuid(),title:e.string().trim().min(1).max(512),createdAt:e.iso.datetime(),deliverBy:e.iso.datetime(),...fo.shape,target:e.discriminatedUnion(`kind`,[uo.options[0].strip(),uo.options[1].strip()])}).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 vo(e,t){return C(e.createdAt,t.createdAt)||(e.notificationId<t.notificationId?-1:+(e.notificationId>t.notificationId))}const yo=`/api/v1/notification-tasks`,bo=100,xo=e.string().min(1).max(8192),So=e.object({cursor:xo.optional()}).strict(),Co=e.object({contractVersion:e.literal(1),roundCursor:xo,notifications:e.array(_o).max(100),nextCursor:xo.nullable()}).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++)vo(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`})}),wo=`/api/browser-notifications`,To=e.string().min(1).max(128),Eo=e.uuid(),Do=e.enum(Ia),Oo=e.strictObject({reset:e.boolean(),improvement:e.boolean()}),ko=`[cdef][\\w-]{21}`,Ao=e.strictObject({fid:e.string().regex(RegExp(`^${ko}$`))});function jo(e){return e.replace(RegExp(`(^|[^\\w-])${ko}(?![\\w-])`,`g`),`$1[registration]`)}const B={operationId:Eo,expectedRevision:To},Mo=e.discriminatedUnion(`action`,[e.strictObject({...B,action:e.literal(`register`),topics:Oo.refine(e=>e.reset||e.improvement,`subscription_topic_required`),locale:Do,registration:Ao}),e.strictObject({...B,action:e.literal(`set_topics`),topics:Oo}),e.strictObject({...B,action:e.literal(`set_locale`),locale:Do}),e.strictObject({...B,action:e.literal(`restore`),registration:Ao}),e.strictObject({...B,action:e.literal(`retry`)}),e.strictObject({...B,action:e.literal(`cancel`)})]),No=e.strictObject({operationId:Eo.optional(),expectedRevision:To.optional()}).refine(e=>e.operationId===void 0==(e.expectedRevision===void 0),`subscription_operation_reference_incomplete`),Po=e.object({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:Eo.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())}),Fo=e.object({id:Eo,state:e.enum([`pending`,`applied`,`rejected`,`unknown`,`superseded`,`not_found`]),error:Po.optional()}),Io=e.object({topicSettings:e.object({state:e.enum([`initial`,`saved`]),revision:To,topics:Oo.strip(),locale:Do.nullable()}),registrationState:e.enum([`none`,`ready`,`invalid`,`changing`]),registrationKey:e.string().regex(/^[a-f0-9]{64}$/).nullable(),manualRetryRequired:e.boolean(),operation:Fo.nullable()});function Lo(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 Ro=e.object({data:Io}),zo=e.object({error:Po});function Bo(e){return{topicSettings:{state:`initial`,revision:e,topics:{reset:!0,improvement:!1},locale:null},registrationState:`none`,registrationKey:null,manualRetryRequired:!1,operation:null}}const Vo=Oo.extend({clue:e.boolean().default(!1)}),[Ho,Uo,...Wo]=Mo.options,Go=e.discriminatedUnion(`action`,[Ho.extend({topics:Vo.refine(e=>Object.values(e).some(Boolean),`subscription_topic_required`)}),Uo.extend({topics:Vo}),...Wo]),Ko=Io.extend({topicSettings:Io.shape.topicSettings.extend({topics:Vo.strip()})}),qo=e.object({data:Ko});function Jo(e){return Ko.parse(Bo(e))}function Yo(e){let{clue:t,...n}=e.topicSettings.topics;return Io.parse({...e,topicSettings:{...e.topicSettings,topics:n}})}function Xo(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 Zo=20,Qo=2*1024*1024,$o=`/api/v1/improvements`,es=e.string().min(1).max(1024),[ts]=Sa.shape.unassignedEntries.element.options,ns=ts.safeExtend({date:e.iso.date().refine(e=>e>$a.endDate,`improvement_must_follow_campaign`)}),rs=e.strictObject({}),is=e.object({challengeEnded:e.boolean(),observedAt:e.iso.datetime()}),as=e.strictObject({cursor:es.nullable(),limit:e.literal(20)}),os=is.extend({entries:e.array(ns).max(20),nextCursor:es.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`})}),ss=e.strictObject({eventIds:e.array(P).min(1).max(128)}),cs=e.object({eventIds:e.array(P).max(128)}),ls=e.object({error:e.object({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())})}),us=`/tibo-source/v1/latest.json`,ds=512*1024,fs=e.iso.datetime({offset:!0}),ps=x.shape.noticeTimeline.element,ms=e.object({contractVersion:e.literal(1),observedAt:fs,check:e.object({checkedAt:fs,freshUntil:fs,active:e.boolean()}).nullable(),latestPost:e.object({authoredAt:fs,sourceUrl:ps.shape.sourceUrl,sourceText:e.string(),sourceTranslations:Zr,resetRelevance:e.enum([`related`,`unrelated`,`unknown`])}).nullable()});async function hs(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 ms.parse(JSON.parse(o))}const gs=`/reset-clue/v1/latest.json`,_s=4320*60*1e3,vs=i.exportUtf8Bytes,ys=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}).superRefine((e,t)=>{Date.parse(e.expiresAt)!==Date.parse(e.authoredAt)+2592e5&&t.addIssue({code:`custom`,message:`reset_clue_expiry_mismatch`,path:[`expiresAt`]})}),bs=e.object({contractVersion:e.literal(1),clue:ys.nullable()}),xs=e=>bs.parse(e);function Ss(e,t){return e.clue!==null&&t.getTime()<Date.parse(e.clue.expiresAt)?e.clue:null}async function Cs(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>vs)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 xs(JSON.parse(o))}const V=e.enum(Ia),H=e.string().regex(/^\d{4}-(?:0[1-9]|1[0-2])$/),U=e.string().trim().min(1),W=e.url({protocol:/^https$/}),G=e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`instant`),at:e.iso.datetime()}),e.object({kind:e.literal(`date`),date:e.iso.date()})]),ws=e.object({operation:U,stage:U,cause:qt});function Ts(t){return e.discriminatedUnion(`state`,[e.object({state:e.literal(`ready`),value:t}),e.object({state:e.literal(`pending`)}),e.object({state:e.literal(`failed`),failure:ws})])}function K(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 q(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 Es=128*1024,Ds=128*1024,Os=256*1024,ks=G,As={product:e.enum([`app`,`cli`]),version:U,published:G,month:H,revision:U};function js(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 Ms=e.object({state:e.literal(`not_applicable`),reason:e.literal(`no_curated_notes`)}),Ns=e.union([Ts(e.object({locale:V,points:e.array(U).min(1)})),Ms]),Ps=e.array(e.object({title:U.nullable(),items:e.array(e.object({text:U,refs:U.nullable()})).min(1)})).min(1);function Fs(t){function n(e,n){let r=t.safeParse({product:e.product,version:e.version});if(!r.success)for(let e of r.error.issues)n.addIssue({...e})}function r(e,t){n(e,t),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`})}let i=e.object(As).superRefine(r),a=K(e.object({contractVersion:e.literal(2),releases:e.array(i),latest:e.object({app:e.string().nullable(),cli:e.string().nullable()})}).superRefine((e,t)=>{js(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`})}}),Es),o=e.object({...As,source:e.object({kind:e.enum([`github`,`official`]),url:W}),summary:Ns,notesCount:e.number().int().nonnegative()}).superRefine((e,t)=>{r(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`})});return{reference:i,directory:a,month:K(e.object({contractVersion:e.literal(2),locale:V,month:H,releases:e.array(o)}).superRefine((e,t)=>{js(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`})}),Ds),notes:K(e.object({contractVersion:e.literal(2),product:e.enum([`app`,`cli`]),version:U,revision:U,locale:V,original:e.array(Ps.element),translation:e.union([Ts(Ps),Ms]).nullable()}).superRefine((e,t)=>{if(n(e,t),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`})}}),Os)}}const J={codex:Fs(Ua),claude:Fs(Wa),antigravity:Fs(Ga)},Is=J.codex.directory,Ls=J.codex.month,Rs=J.codex.notes,zs=e=>Is.parse(e),Bs=e=>Ls.parse(e),Vs=e=>Rs.parse(e),Hs=(e,t)=>q(t,`${e}_release_directory`,Es,J[e].directory),Us=(e,t)=>q(t,`${e}_release_month`,Ds,J[e].month),Ws=(e,t)=>q(t,`${e}_release_notes`,Os,J[e].notes),Gs=e=>Hs(`codex`,e),Ks=e=>Us(`codex`,e),qs=e=>Ws(`codex`,e),Js=e=>`/${Va.parse(e)}-releases/v2`,Ys=e=>`${Js(e)}/directory.json`;function Xs(e,t,n){return`${Js(e)}/${V.parse(t)}/${H.parse(n)}.json`}function Zs(e,t,n,r){let i=Ka(e).parse({product:n,version:r});return`${Js(e)}/${V.parse(t)}/notes/${i.product}/${i.version}.json`}const Qs=Ys(`codex`),$s=(e,t)=>Xs(`codex`,e,t),ec=(e,t,n)=>Zs(`codex`,e,t,n),tc=t=>e.strictObject({eventType:e.literal(`release_snapshot_available`),tool:e.literal(t),months:e.array(H),releases:e.array(J[t].reference)}),nc=e.discriminatedUnion(`tool`,[tc(`claude`),tc(`antigravity`)]),rc=128*1024;function Y(t){return e.discriminatedUnion(`state`,[e.object({state:e.literal(`known`),value:t,source:W}),e.object({state:e.literal(`unavailable`),reason:e.enum([`not_announced`,`not_listed`]),source:W.nullable()})])}const ic=e.object({input:U,cached:U,output:U}),ac=e.object({modelId:qa,name:U,group:e.enum([`current`,`retired`]),status:e.enum([`available`,`retiring`,`retired`]),launched:Y(G),chatgptRetirement:Y(G),apiRetirement:Y(G),credits:Y(ic),apiPrice:Y(ic),multiple:e.string().regex(/^(?:0|[1-9]\d*)(?:\.\d+)?$/).refine(e=>Number.isFinite(Number(e))&&Number(e)>0).nullable(),plans:Y(e.array(U).min(1)),surfaces:Y(e.array(U).min(1)),about:Ts(e.object({locale:V,paragraphs:e.array(U).min(1)})),sources:e.array(e.object({label:U,url:W})).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`})}),oc=K(e.object({contractVersion:e.literal(1),locale:V,models:e.array(ac),multipleBase:e.object({modelId:qa,name:U}).nullable(),upcomingRetirement:e.object({names:U,modelIds:e.array(qa).min(1),surface:e.enum([`api`,`chatgpt`]),at:G}).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`})}}}),rc),sc=e=>oc.parse(e),cc=e=>q(e,`codex_models`,rc,oc),lc=e=>`/codex-models/v1/${V.parse(e)}.json`;function uc(e){let[t=``,n=``]=e.replace(/Z$/,``).split(`.`);return`${t.length===16?t+`:00`:t}.${n.replace(/0+$/,``)}`}function X(e,t){let n=uc(e),r=uc(t);return n<r?-1:+(n>r)}function dc(e,t){let n=Date.parse(e);return Number.isFinite(n)?new Date(n-t*864e5).toISOString().slice(0,19)+uc(e).slice(19)+`Z`:e}function fc(e,t,n){return e.length===10?e>=t.slice(0,10)&&e<=n.slice(0,10):X(e,t)>=0&&X(e,n)<=0}function pc(e,t,n=`primary`){(n===`primary`?X(e.occurredAt,e.primary.authoredAt)===0:X(e.occurredAt,e.primary.authoredAt)<=0&&[e.primary,...e.otherSources].some(t=>X(e.occurredAt,t.authoredAt)===0))||t.addIssue({code:`custom`,path:[`occurredAt`],message:`entry_primary_time_mismatch`}),X(e.updatedAt,e.occurredAt)<0&&t.addIssue({code:`custom`,path:[`updatedAt`],message:`entry_update_before_occurrence`});let r=new Set([e.primary.url]);for(let[n,i]of e.otherSources.entries()){r.has(i.url)&&t.addIssue({code:`custom`,path:[`otherSources`,n,`url`],message:`duplicate_source_url`}),r.add(i.url);let a=e.otherSources.at(n-1);n>0&&a&&X(a.authoredAt,i.authoredAt)>0&&t.addIssue({code:`custom`,path:[`otherSources`,n],message:`source_order_mismatch`})}for(let[n,r]of(e.followUps??[]).entries()){let i=e.followUps?.at(n-1);n>0&&i&&X(i.at,r.at)>0&&t.addIssue({code:`custom`,path:[`followUps`,n],message:`follow_up_order_mismatch`})}if(e.leak!==null){let n=e.leak;n&&n.state===`unconfirmed`&&n.url!==void 0&&n.reportedAt!==void 0&&(e.primary.url!==n.url||X(e.occurredAt,n.reportedAt)!==0)&&t.addIssue({code:`custom`,path:[`leak`],message:`unconfirmed_leak_primary_mismatch`}),n&&n.state===`confirmed`&&n.url!==void 0&&e.primary.url===n.url&&t.addIssue({code:`custom`,path:[`leak`],message:`confirmed_leak_primary_mismatch`})}}function mc(e,t){return X(t.occurredAt,e.occurredAt)||(e.id<t.id?-1:+(e.id>t.id))}function hc(e,t){let n=new Set;for(let[r,i]of e.entries()){n.has(i.id)&&t.addIssue({code:`custom`,path:[`entries`,r,`id`],message:`duplicate_entry`}),n.add(i.id);let a=e.at(r-1);r>0&&a&&mc(a,i)>0&&t.addIssue({code:`custom`,path:[`entries`,r],message:`entry_order_mismatch`})}}function gc(e,t,n=30){hc(e.entries,t);let r=dc(e.generatedAt,7),i=dc(e.generatedAt,n),a=e.entries.filter(t=>fc(t.occurredAt,r,e.generatedAt));(e.overview.weekCount!==a.length||e.overview.unconfirmedLeakCount!==a.filter(e=>e.leak?.state===`unconfirmed`).length||e.overview.miniProgramHiddenWeekCount!==a.filter(e=>e.miniProgramHidden).length)&&t.addIssue({code:`custom`,path:[`overview`],message:`overview_entries_mismatch`}),(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[n,r]of e.entries.entries())(!fc(r.occurredAt,i,e.generatedAt)||!e.coverage.months.includes(r.occurredAt.slice(0,7))||r.occurredAt.slice(0,10)<e.coverage.from)&&t.addIssue({code:`custom`,path:[`entries`,n],message:`entry_coverage_mismatch`})}function _c(e,t){hc(e.entries,t),e.entries.some(t=>t.occurredAt.slice(0,7)!==e.month)&&t.addIssue({code:`custom`,path:[`entries`],message:`entry_month_mismatch`})}const vc=256*1024,yc=512*1024,bc=3600*1e3,xc=e.enum([`model`,`product`,`pricing`,`security`,`policy`,`industry`,`controversy`]),Z=e.string().trim().min(1),Sc=e.object({zh:Z.max(200),en:Z.max(200)}),Cc=e.object({what:Z.max(400),scale:Z.max(400),stakes:Z.max(400)}),wc=e.discriminatedUnion(`form`,[e.object({form:e.literal(`line`),zh:Z.max(600),en:Z.max(600)}),e.object({form:e.literal(`explained`),zh:Cc,en:Cc})]),Q=e.union([e.iso.date(),e.iso.datetime()]),Tc=e.object({url:W,label:Z.max(120),authoredAt:Q}),Ec=e.object({at:Q,title:Sc,url:W}),Dc=e.object({state:e.enum([`unconfirmed`,`confirmed`]),reportedAt:Q,url:W,label:Z.max(120)});function Oc(e,t){if(e.length===10)return{dateKey:e,instant:null};let n=new Intl.DateTimeFormat(`en-CA`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`}).formatToParts(new Date(e)),r=e=>n.find(t=>t.type===e)?.value;return{dateKey:`${r(`year`)}-${r(`month`)}-${r(`day`)}`,instant:e}}function kc(e,t,n){return fc(e,t,n)}const Ac=X,jc=e.object({id:e.string().regex(/^evt_[A-Za-z0-9_-]{1,64}$/),kind:xc,title:Sc,summary:wc,occurredAt:Q,shortTitle:Sc.nullable().optional(),primary:Tc,otherSources:e.array(Tc),followUps:e.array(Ec),leak:Dc.nullable(),miniProgramHidden:e.boolean(),updatedAt:e.iso.datetime()}).superRefine(pc);function Mc(e,t){return mc(e,t)}const Nc=K(e.object({contractVersion:e.literal(1),generatedAt:e.iso.datetime(),overview:e.object({weekCount:e.number().int().nonnegative(),unconfirmedLeakCount:e.number().int().nonnegative(),miniProgramHiddenWeekCount:e.number().int().nonnegative()}),latestSourceSuccessAt:e.iso.datetime().nullable(),coverage:e.object({from:e.iso.date(),months:e.array(H)}),entries:e.array(jc)}).superRefine(gc),vc),Pc=K(e.object({contractVersion:e.literal(1),month:H,entries:e.array(jc)}).superRefine(_c),yc),Fc=()=>`/ai-radar/v1/latest.json`,Ic=e=>`/ai-radar/v1/${H.parse(e)}.json`,Lc=e=>Nc.parse(e),Rc=e=>Pc.parse(e),zc=e=>q(e,`ai_radar_latest`,vc,Nc),Bc=e=>q(e,`ai_radar_month`,yc,Pc),Vc=e=>e===`zh-Hans`?`zh`:`en`;function Hc(e,t){return e.latestSourceSuccessAt===null||X(e.latestSourceSuccessAt,new Date(t-36e5).toISOString())<0}const Uc=vc,Wc=yc,Gc=64*1024,Kc=[`codex`,`claude`,`antigravity`],$=e.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/),qc=e.string().refine(e=>{let t=e.split(`
8
8
 
9
9
  `);return t.length<=3&&t.every(e=>e.trim().length>0)&&e.trim().split(`
10
10
 
11
- `).every(e=>e===e.trim()&&!/[\r\n]/.test(e))},{message:`digest_paragraphs_invalid`}).trim().min(1),Pc=e.strictObject({zh:Nc.max(1e3),en:Nc.max(2e3)}).nullable(),Fc=uc.extend({official:e.boolean()}),Ic=e.enum([`follow_up`,`confirms`]),Lc=e.strictObject({id:Mc,relation:Ic,title:Q,at:$}),Rc=e.enum([`unconfirmed`,`confirmed`]),zc=e.union([e.strictObject({state:Rc,reportedAt:$,url:uc.shape.url,label:e.string().trim().min(1).max(120)}),e.strictObject({state:Rc})]),{summary:Bc,followUps:Vc,leak:Hc,...Uc}=gc.shape;function Wc(e,t){e.follows?.id===e.id&&t.addIssue({code:`custom`,path:[`follows`,`id`],message:`follow_self`});let n=e.followedBy??[],r=new Set;for(let[i,a]of n.entries()){a.id===e.id&&t.addIssue({code:`custom`,path:[`followedBy`,i,`id`],message:`followed_by_self`}),r.has(a.id)&&t.addIssue({code:`custom`,path:[`followedBy`,i,`id`],message:`duplicate_followed_by`}),r.add(a.id);let o=n.at(i-1);i>0&&o&&(X(o.at,a.at)>0||X(o.at,a.at)===0&&o.id>=a.id)&&t.addIssue({code:`custom`,path:[`followedBy`,i],message:`followed_by_order_mismatch`})}n.some(e=>e.relation===`confirms`)&&e.leak?.state!==`confirmed`&&t.addIssue({code:`custom`,path:[`leak`],message:`confirming_follow_requires_confirmed_leak`})}const Gc=e.strictObject({...Uc,id:Mc,digest:Pc,tool:e.enum(jc).optional(),toolOnly:e.literal(!0).optional(),follows:Lc.optional(),followedBy:e.array(Lc).optional(),followUps:e.array(dc).optional(),leak:zc.nullable(),primary:Fc,otherSources:e.array(Fc)}).superRefine((e,t)=>{$s(e,t,`any_source_before_primary`),Wc(e,t),e.toolOnly===!0&&e.tool===void 0&&t.addIssue({code:`custom`,path:[`toolOnly`],message:`tool_only_requires_tool`})}),Kc=q(e.object({...vc.shape,contractVersion:e.literal(2),entries:e.array(Gc)}).superRefine((e,t)=>nc(e,t,7)),Oc),qc=q(e.object({...yc.shape,contractVersion:e.literal(2),entries:e.array(Gc)}).superRefine(rc),kc),Jc=q(e.strictObject({contractVersion:e.literal(2),generatedAt:e.iso.datetime(),entry:Gc}),Ac);function Yc(e,t){return ec(e,t)}const Xc=()=>`/ai-radar/v2/latest.json`,Zc=e=>`/ai-radar/v2/${U.parse(e)}.json`,Qc=e=>`/ai-radar/v2/events/${Mc.parse(e)}.json`,$c=e=>Kc.parse(e),el=e=>qc.parse(e),tl=e=>Jc.parse(e),nl=e=>J(e,`ai_radar_latest_v2`,Oc,Kc),rl=e=>J(e,`ai_radar_month_v2`,kc,qc),il=e=>J(e,`ai_radar_event_v2`,Ac,Jc);function al(e,t){return`${B(`dynamics`,t)}/${Mc.parse(e)}`}function ol(e,t){let n=[e.primary.authoredAt,...e.otherSources.map(e=>e.authoredAt),...(e.followUps??[]).map(e=>e.at)];e.leak!==null&&`reportedAt`in e.leak&&n.push(e.leak.reportedAt);let r=n.map(e=>e.length===10?`${e}T00:00:00Z`:e).reduce((e,t)=>X(e,t)>=0?e:t);return X(r,new Date(t-1440*60*1e3).toISOString())>0?`developing`:X(r,new Date(t-4320*60*1e3).toISOString())>0?`watching`:`past`}function sl(e){return e.shortTitle??e.title}const cl=e.object({revision:e.string().min(1).max(160),digest:e.string().regex(/^[a-f0-9]{64}$/)}).strict(),ll=e.discriminatedUnion(`kind`,[e.object({publicationId:e.string().min(1).max(160),kind:e.literal(`content`),sources:e.object({"reset-v1":cl,"reset-v2":cl,"reset-v3":cl,"reset-v4":cl.optional()}).strict()}).strict(),e.object({publicationId:e.string().min(1).max(160),kind:e.literal(`reset-clue`),sources:e.object({"reset-clue":cl}).strict()}).strict()]),ul=e.object({resource:e.enum([`content-v1`,`content-v2`,`content-v3`,`content-v4`,`reset-clue`]),sourceRevision:e.string().min(1).max(160),sourceDigest:e.string().regex(/^[a-f0-9]{64}$/),targetVersion:e.iso.datetime().nullable(),targetDigest:e.string().regex(/^[a-f0-9]{64}$/).nullable(),outcome:e.enum([`published`,`unchanged`,`busy`,`superseded`,`failed`]),error:e.object({operation:e.string().min(1),stage:e.string().min(1),code:e.string().min(1),summary:e.string().min(1),correlationId:e.string().min(1),cause:e.unknown(),upstreamStatus:e.number().int().optional(),upstreamCode:e.string().optional()}).optional()}).superRefine((e,t)=>{(e.outcome===`published`||e.outcome===`unchanged`)&&(e.targetVersion===null||e.targetDigest===null)&&t.addIssue({code:`custom`,message:`completed publication requires a target receipt`}),e.outcome===`failed`&&e.error===void 0&&t.addIssue({code:`custom`,message:`failed publication requires a cause`})}),dl=e.object({publicationId:e.string().min(1).max(160),results:e.array(ul).min(1).max(4)}).superRefine((e,t)=>{new Set(e.results.map(e=>e.resource)).size!==e.results.length&&t.addIssue({code:`custom`,message:`duplicate resource`})}),fl=`/api/v1/internal/publications/wechat/dispatch`,pl=`/__radar/wechat-publication/dispatch`,ml=bi.shape.generatedAt,hl=z.shape.records.element,gl=e.object({id:e.string().min(1),resetActionId:hl.shape.resetActionId,at:ml,effects:e.array(hl.shape.effect).min(1).max(2),source:e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`official_post`),sourceUrl:hl.shape.sourceUrl}),e.object({kind:e.literal(`manual`),officialConfirmationMissing:e.boolean()})])}),_l=e.object(z.shape).extend({records:e.array(e.object(hl.shape).extend({sourceUrl:hl.shape.sourceUrl.nullable(),confirmationId:e.string().min(1).nullable()})).max(i.analysis.actions*2)}).superRefine((e,t)=>{yi(e,t);for(let[n,r]of e.records.entries())r.basis===`execution_confirmation`!=(r.confirmationId!==null)&&t.addIssue({code:`custom`,message:`statistics_confirmation_identity_mismatch`,path:[`records`,n]}),r.basis===`announcement`&&r.sourceUrl===null&&t.addIssue({code:`custom`,message:`statistics_announcement_source_missing`,path:[`records`,n]})}),vl=e.object({sourceWatermark:ie.shape.sourceWatermark,confirmations:e.array(gl),statistics:_l}),yl=e.object(bi.shape).extend({contractVersion:e.literal(4),statistics:_l,confirmations:e.array(gl)}).superRefine((e,t)=>{let n=e=>t.addIssue({code:`custom`,message:e});new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&n(`export_utf8_size_limit_exceeded`);let r=new Map(e.confirmations.map(e=>[e.id,e])),a=new Map(e.actions.map(e=>[e.resetActionId,e]));a.size!==e.actions.length&&n(`export_action_identity_duplicate`),new Set(e.pendingResetActions.map(e=>e.resetActionId)).size!==e.pendingResetActions.length&&n(`export_pending_action_identity_duplicate`);let o=new Set(e.statistics.records.map(e=>e.resetActionId));for(let[t,r]of e.actions.entries()){Date.parse(r.firstAnnouncedAt)>Date.parse(e.generatedAt)&&n(`export_action_after_snapshot`);let i=e.actions.at(t-1);t>0&&i!==void 0&&ml.safeParse(i.firstAnnouncedAt).success&&ml.safeParse(r.firstAnnouncedAt).success&&Ue(i,r)>0&&n(`export_actions_not_stably_sorted`),Date.parse(r.firstAnnouncedAt)>=Date.parse(e.statistics.startAt)&&!o.has(r.resetActionId)&&n(`export_statistics_window_action_missing`)}r.size!==e.confirmations.length&&t.addIssue({code:`custom`,message:`confirmation_identity_duplicate`});for(let r of e.confirmations){let i=a.get(r.resetActionId);(i===void 0||Date.parse(r.at)>Date.parse(e.generatedAt))&&t.addIssue({code:`custom`,message:`confirmation_action_or_time_invalid`}),(new Set(r.effects).size!==r.effects.length||r.effects.some(e=>i!==void 0&&(e===null!=(i.resetEffects.state===`unknown`)||e!==null&&!i.resetEffects.values.some(t=>t===e))))&&n(`confirmation_effect_mismatch`);let o=r.source;o.kind===`official_post`&&!i?.noticeTimeline.some(e=>e.phase===`executed`&&e.sourceUrl===o.sourceUrl&&e.authoredAt===r.at)&&t.addIssue({code:`custom`,message:`confirmation_official_source_invalid`})}for(let i of e.statistics.records){let o=a.get(i.resetActionId),s=i.confirmationId===null?void 0:r.get(i.confirmationId);Date.parse(i.at)>Date.parse(e.generatedAt)&&n(`export_statistics_record_after_snapshot`),o!==void 0&&(o.resetEffects.state===`unknown`!=(i.effect===null)||i.effect!==null&&!o.resetEffects.values.some(e=>e===i.effect))&&n(`export_statistics_effect_mismatch`),(o===void 0||i.confirmationId!==null&&(s===void 0||s.resetActionId!==i.resetActionId||s.at!==i.at||!s.effects.includes(i.effect)))&&t.addIssue({code:`custom`,message:`statistics_confirmation_missing_or_mismatched`}),s!==void 0&&i.sourceUrl!==(s.source.kind===`official_post`?s.source.sourceUrl:null)&&n(`statistics_confirmation_source_mismatch`),i.basis===`announcement`&&!o?.noticeTimeline.some(e=>e.sourceUrl===i.sourceUrl&&e.authoredAt===i.at&&o.firstAnnouncedAt===i.at)&&t.addIssue({code:`custom`,message:`statistics_announcement_source_invalid`})}}),bl=e=>yl.parse(e);export{sn as RadarResetSourceContractErrorV2,hs as activeRadarResetClue,_c as compareRadarAiRadarEntries,Yc as compareRadarAiRadarEntriesV2,hc as compareRadarAiRadarPublicationTimes,uo as compareRadarNotificationTasks,Ue as compareRadarResetActionDetailsV1,C as compareRadarResetUtcTimestampsV1,so as createRadarBrowserNotificationProjection,Xa as createRadarCodexProgressCalendar,co as createRadarNotificationProjection,On as createRadarResetSourceErrorEnvelopeV2,Ir as encodeRadarActivityFile,Rr as encodeRadarActivityFileV2,ka as encodeRadarActivityFileV3,gn as encodeRadarResetDetailMultipartV2,Lr as encodeRadarTitledActivityFile,lt as formatRadarResetPositiveDecimalV2,ct as formatRadarResetUInt64DecimalV2,No as initialRadarBrowserSubscription,Vo as initialRadarBrowserSubscriptionV2,tl as parseRadarAiRadarEventV2,Sc as parseRadarAiRadarLatest,$c as parseRadarAiRadarLatestV2,Cc as parseRadarAiRadarMonth,el as parseRadarAiRadarMonthV2,qs as parseRadarCodexModels,Na as parseRadarCodexProgressChangeV3,Pa as parseRadarCodexProgressChangesV3,Mn as parseRadarCodexProgressV1,Hn as parseRadarCodexProgressV2,Zn as parseRadarCodexProgressV3,rr as parseRadarCodexProgressV4,ma as parseRadarCodexProgressV5,Fs as parseRadarCodexReleaseDirectory,Is as parseRadarCodexReleaseMonth,Ls as parseRadarCodexReleaseNotes,Ge as parseRadarResetActionDetailV1,ci as parseRadarResetActionDetailV2,wi as parseRadarResetActionDetailV3,St as parseRadarResetActionSummaryV2,We as parseRadarResetAnalysisV1,ms as parseRadarResetClueSnapshot,xn as parseRadarResetDetailMultipartV2,Ke as parseRadarResetExportV1,ui as parseRadarResetExportV2,Si as parseRadarResetExportV3,bl as parseRadarResetExportV4,qe as parseRadarResetPendingActionV1,li 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,Ao as projectRadarBrowserSubscriptionSelection,Ho as projectRadarBrowserSubscriptionV1,di as projectRadarResetExportV1FromV2,Ci as projectRadarResetExportV3FromV2,Je as projectRadarResetPrimarySourceV1,ji as projectRadarResetPublicActionToV2,P as radarActivityEventIdSchema,I as radarActivityFileSchema,lr as radarActivityFileUrl,Mr as radarActivityFileV2Schema,ur as radarActivityFileV2Url,Da as radarActivityFileV3Schema,ha as radarActivityFileV3Url,F as radarActivityMaxBytes,mr as radarActivityProgressSchema,kr as radarActivityProgressV2Schema,Sa as radarActivityProgressV3Schema,hr as radarActivityReactionCountsSchema,cr as radarActivityReactionIdSchema,N as radarActivityReactionIds,Ec as radarAiRadarContentLanguage,Pc as radarAiRadarDigestV2Schema,gc as radarAiRadarEntrySchema,Gc as radarAiRadarEntryV2Schema,al as radarAiRadarEventUrl,Ac as radarAiRadarEventV2MaxBytes,Qc as radarAiRadarEventV2Path,Jc as radarAiRadarEventV2Schema,dc as radarAiRadarFollowUpSchema,Lc as radarAiRadarFollowV2Schema,Mc as radarAiRadarIdV2Schema,sc as radarAiRadarKindSchema,ic as radarAiRadarLatestMaxBytes,bc as radarAiRadarLatestPath,vc as radarAiRadarLatestSchema,Oc as radarAiRadarLatestV2MaxBytes,Xc as radarAiRadarLatestV2Path,Kc as radarAiRadarLatestV2Schema,fc as radarAiRadarLeakSchema,zc as radarAiRadarLeakV2Schema,ac as radarAiRadarMonthMaxBytes,xc as radarAiRadarMonthPath,yc as radarAiRadarMonthSchema,kc as radarAiRadarMonthV2MaxBytes,Zc as radarAiRadarMonthV2Path,qc as radarAiRadarMonthV2Schema,$ as radarAiRadarPublicationTimeSchema,uc as radarAiRadarSourceSchema,oc as radarAiRadarSourceStaleMs,Fc as radarAiRadarSourceV2Schema,Dc as radarAiRadarSourcesStale,ol as radarAiRadarStoryStatus,lc as radarAiRadarSummarySchema,mc as radarAiRadarTimeInWindow,pc as radarAiRadarTimeView,Q as radarAiRadarTitleSchema,jc as radarAiRadarToolValues,Ua as radarBrowserNotificationPageUrl,oo as radarBrowserNotificationProjectionSchema,no as radarBrowserNotificationTargetUrlSchema,ao as radarBrowserNotificationTopicSchema,Co as radarBrowserRegistrationSchema,Mo as radarBrowserSubscriptionErrorRes,Do as radarBrowserSubscriptionFailureSchema,Oo as radarBrowserSubscriptionOperationSchema,Eo as radarBrowserSubscriptionReadReq,jo as radarBrowserSubscriptionRes,To as radarBrowserSubscriptionSaveReq,Ro as radarBrowserSubscriptionSaveV2Req,Bo as radarBrowserSubscriptionV2Res,ko as radarBrowserSubscriptionViewSchema,zo as radarBrowserSubscriptionViewV2Schema,_o as radarBrowserSubscriptionsPath,xo as radarBrowserTopicsSchema,Po as radarBrowserTopicsV2Schema,Gr as radarCodexGuessChoiceSchema,Xr as radarCodexGuessErrorSchema,Kr as radarCodexGuessSaveReqSchema,Yr as radarCodexGuessViewSchema,Ha as radarCodexModelIdSchema,Ga as radarCodexModelUrl,Us as radarCodexModelsMaxBytes,Ys as radarCodexModelsPath,Ks as radarCodexModelsSchema,Ka as radarCodexProgressCalendar,zr as radarCodexProgressChangeSchema,Vr as radarCodexProgressChangeV2Schema,ja as radarCodexProgressChangeV3Schema,Br as radarCodexProgressChangesV1Schema,Hr as radarCodexProgressChangesV2Schema,Ma as radarCodexProgressChangesV3Schema,A as radarCodexProgressEntrySchema,Wn as radarCodexProgressEntryV3Schema,ca as radarCodexProgressEntryV5Schema,oa as radarCodexProgressImprovementV5Schema,Nn as radarCodexProgressOutcome,na as radarCodexProgressPostRoleV5Schema,ra as radarCodexProgressPostV5Schema,ia as radarCodexProgressPostsV5Schema,sa as radarCodexProgressResetEntryV5Schema,Xn as radarCodexProgressScore,M as radarCodexProgressTitleV3Schema,j as radarCodexProgressV1Schema,Fn as radarCodexProgressV2MaxBytes,Vn as radarCodexProgressV2Schema,Un as radarCodexProgressV3MaxBytes,Yn as radarCodexProgressV3Schema,Qn as radarCodexProgressV4MaxBytes,nr as radarCodexProgressV4Schema,aa as radarCodexProgressV5MaxBytes,pa as radarCodexProgressV5Schema,bs as radarCodexReleaseDirectoryMaxBytes,ys as radarCodexReleaseDirectoryPath,Os as radarCodexReleaseDirectorySchema,Va as radarCodexReleaseIdentitySchema,xs as radarCodexReleaseMonthMaxBytes,Vs as radarCodexReleaseMonthPath,Ms as radarCodexReleaseMonthSchema,Ss as radarCodexReleaseNotesMaxBytes,Hs as radarCodexReleaseNotesPath,Ps as radarCodexReleaseNotesSchema,Ns as radarCodexReleaseSectionsSchema,Wa as radarCodexReleaseUrl,Cs as radarCodexTimePointSchema,sl as radarCompactTitle,Ko as radarImprovementColumnPath,es as radarImprovementEligibilityReq,ts as radarImprovementEligibilityRes,Yo as radarImprovementEntrySchema,ns as radarImprovementErrorRes,Xo as radarImprovementHeadReq,Zo as radarImprovementHeadRes,Go as radarImprovementPageMaxBytes,Qo as radarImprovementPageReq,$o as radarImprovementPageRes,Wo as radarImprovementPageSize,io as radarNotificationProjectionSchema,ro as radarNotificationTargetSchema,po as radarNotificationTaskPageSize,lo as radarNotificationTaskSchema,fo as radarNotificationTasksPath,ho as radarNotificationTasksReq,go as radarNotificationTasksRes,Za as radarNotificationTopicSchema,Qa as radarNotificationTopicsSchema,x as radarResetActionDetailV1Schema,L as radarResetActionDetailV2Schema,fi 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,us as radarResetClueLifetimeMs,ds as radarResetClueMaxBytes,ls as radarResetCluePath,fs as radarResetClueSchema,ps as radarResetClueSnapshotSchema,gl as radarResetConfirmationSchema,vl as radarResetConfirmationsResponseSchema,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,si as radarResetExportV2Schema,bi as radarResetExportV3Schema,yl as radarResetExportV4Schema,ei as radarResetKindNoticeV2Schema,Qi as radarResetManagementActionSchema,Gi as radarResetManagementOperationSchema,Wi as radarResetManagementProductSchema,$i as radarResetManagementResSchema,Zi as radarResetManualApplyReqSchema,Ui as radarResetManualCopySchema,Ki as radarResetManualDraftSchema,Yi as radarResetManualDraftSeedSchema,qi as radarResetManualPreviewReqSchema,Xi as radarResetManualPreviewResSchema,ea as radarResetManualResultResSchema,Le as radarResetNoticeKindValues,S as radarResetPendingActionV1Schema,oi as radarResetPendingActionV2Schema,l as radarResetPlanValues,w as radarResetPositiveDecimalV2Schema,Di as radarResetProductPublicRecordsCorePath,Bi as radarResetProductPublicRecordsV1Schema,Ei as radarResetProductRecordsProductValues,s as radarResetProductValues,Ni as radarResetPublicActionV1Schema,i as radarResetPublicDataLimits,E as radarResetPublicIdV2Schema,Ti as radarResetPublicRecordsCorePath,zi 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,Zr as radarResetSourceTranslationsSchema,xi as radarResetStatisticsResponseV3Schema,z as radarResetStatisticsV1Schema,_l as radarResetStatisticsV2Schema,it as radarResetUInt64DecimalV2Schema,st as radarResetUInt64DecimalV2ToBigInt,Pi as radarResetUnexecutedActionV1Schema,T as radarResetUtcTimestampV2Schema,Ot as radarResetWithdrawnActionItemV2Schema,Fi as radarResetWithdrawnActionV1Schema,is as radarTiboSourceStatusMaxBytes,rs as radarTiboSourceStatusPath,ss as radarTiboSourceStatusSchema,Er as radarTitledActivityFileSchema,Cr as radarTitledActivityProgressSchema,za as radarWebsiteLegacyChinesePrefix,Ra as radarWebsiteLocalePrefixes,La as radarWebsiteLocaleSlugs,Ia as radarWebsiteLocales,Fa as radarWebsiteOrigin,Ba as radarWebsitePagePaths,B as radarWebsitePageUrl,fl as radarWechatDispatchPath,ll as radarWechatDispatchRequestSchema,dl as radarWechatDispatchResponseSchema,ul as radarWechatDispatchResultSchema,pl as radarWechatPrivateDispatchPath,Nr as readRadarActivityFile,Fr as readRadarActivityFileV2,Oa as readRadarActivityFileV3,il as readRadarAiRadarEventV2,wc as readRadarAiRadarLatest,nl as readRadarAiRadarLatestV2,Tc as readRadarAiRadarMonth,rl as readRadarAiRadarMonthV2,Js as readRadarCodexModels,Rs as readRadarCodexReleaseDirectory,zs as readRadarCodexReleaseMonth,Bs as readRadarCodexReleaseNotes,gs as readRadarResetClueSnapshot,cs as readRadarTiboSourceStatus,Pr as readRadarTitledActivityFile,wo as redactRadarBrowserRegistrationReferences,yi as refineRadarResetStatistics,Tn as toSafeCauseSnapshotV2,Uo as upgradeRadarBrowserSubscriptionCommandV1};
11
+ `).every(e=>e===e.trim()&&!/[\r\n]/.test(e))},{message:`digest_paragraphs_invalid`}).trim().min(1),Jc=e.strictObject({zh:qc.max(1e3),en:qc.max(2e3)}).nullable(),Yc=Tc.extend({official:e.boolean()}),Xc=e.enum([`follow_up`,`confirms`]),Zc=e.strictObject({id:$,relation:Xc,title:Sc,at:Q}),Qc=e.enum([`unconfirmed`,`confirmed`]),$c=e.union([e.strictObject({state:Qc,reportedAt:Q,url:Tc.shape.url,label:e.string().trim().min(1).max(120)}),e.strictObject({state:Qc})]),{summary:el,followUps:tl,leak:nl,...rl}=jc.shape;function il(e,t){e.follows?.id===e.id&&t.addIssue({code:`custom`,path:[`follows`,`id`],message:`follow_self`});let n=e.followedBy??[],r=new Set;for(let[i,a]of n.entries()){a.id===e.id&&t.addIssue({code:`custom`,path:[`followedBy`,i,`id`],message:`followed_by_self`}),r.has(a.id)&&t.addIssue({code:`custom`,path:[`followedBy`,i,`id`],message:`duplicate_followed_by`}),r.add(a.id);let o=n.at(i-1);i>0&&o&&(X(o.at,a.at)>0||X(o.at,a.at)===0&&o.id>=a.id)&&t.addIssue({code:`custom`,path:[`followedBy`,i],message:`followed_by_order_mismatch`})}n.some(e=>e.relation===`confirms`)&&e.leak?.state!==`confirmed`&&t.addIssue({code:`custom`,path:[`leak`],message:`confirming_follow_requires_confirmed_leak`})}const al=e.strictObject({...rl,id:$,digest:Jc,tool:e.enum(Kc).optional(),toolOnly:e.literal(!0).optional(),follows:Zc.optional(),followedBy:e.array(Zc).optional(),followUps:e.array(Ec).optional(),leak:$c.nullable(),primary:Yc,otherSources:e.array(Yc)}).superRefine((e,t)=>{pc(e,t,`any_source_before_primary`),il(e,t),e.toolOnly===!0&&e.tool===void 0&&t.addIssue({code:`custom`,path:[`toolOnly`],message:`tool_only_requires_tool`})}),ol=K(e.object({...Nc.shape,contractVersion:e.literal(2),entries:e.array(al)}).superRefine((e,t)=>gc(e,t,7)),Uc),sl=K(e.object({...Pc.shape,contractVersion:e.literal(2),entries:e.array(al)}).superRefine(_c),Wc),cl=K(e.strictObject({contractVersion:e.literal(2),generatedAt:e.iso.datetime(),entry:al}),Gc);function ll(e,t){return mc(e,t)}const ul=()=>`/ai-radar/v2/latest.json`,dl=e=>`/ai-radar/v2/${H.parse(e)}.json`,fl=e=>`/ai-radar/v2/events/${$.parse(e)}.json`,pl=e=>ol.parse(e),ml=e=>sl.parse(e),hl=e=>cl.parse(e),gl=e=>q(e,`ai_radar_latest_v2`,Uc,ol),_l=e=>q(e,`ai_radar_month_v2`,Wc,sl),vl=e=>q(e,`ai_radar_event_v2`,Gc,cl);function yl(e,t){return`${Ja(`dynamics`,t)}/${$.parse(e)}`}function bl(e,t){let n=[e.primary.authoredAt,...e.otherSources.map(e=>e.authoredAt),...(e.followUps??[]).map(e=>e.at)];e.leak!==null&&`reportedAt`in e.leak&&n.push(e.leak.reportedAt);let r=n.map(e=>e.length===10?`${e}T00:00:00Z`:e).reduce((e,t)=>X(e,t)>=0?e:t);return X(r,new Date(t-1440*60*1e3).toISOString())>0?`developing`:X(r,new Date(t-4320*60*1e3).toISOString())>0?`watching`:`past`}function xl(e){return e.shortTitle??e.title}const Sl=e.object({revision:e.string().min(1).max(160),digest:e.string().regex(/^[a-f0-9]{64}$/)}).strict(),Cl=e.discriminatedUnion(`kind`,[e.object({publicationId:e.string().min(1).max(160),kind:e.literal(`content`),sources:e.object({"reset-v1":Sl,"reset-v2":Sl,"reset-v3":Sl,"reset-v4":Sl.optional()}).strict()}).strict(),e.object({publicationId:e.string().min(1).max(160),kind:e.literal(`reset-clue`),sources:e.object({"reset-clue":Sl}).strict()}).strict()]),wl=e.object({resource:e.enum([`content-v1`,`content-v2`,`content-v3`,`content-v4`,`reset-clue`]),sourceRevision:e.string().min(1).max(160),sourceDigest:e.string().regex(/^[a-f0-9]{64}$/),targetVersion:e.iso.datetime().nullable(),targetDigest:e.string().regex(/^[a-f0-9]{64}$/).nullable(),outcome:e.enum([`published`,`unchanged`,`busy`,`superseded`,`failed`]),error:e.object({operation:e.string().min(1),stage:e.string().min(1),code:e.string().min(1),summary:e.string().min(1),correlationId:e.string().min(1),cause:e.unknown(),upstreamStatus:e.number().int().optional(),upstreamCode:e.string().optional()}).optional()}).superRefine((e,t)=>{(e.outcome===`published`||e.outcome===`unchanged`)&&(e.targetVersion===null||e.targetDigest===null)&&t.addIssue({code:`custom`,message:`completed publication requires a target receipt`}),e.outcome===`failed`&&e.error===void 0&&t.addIssue({code:`custom`,message:`failed publication requires a cause`})}),Tl=e.object({publicationId:e.string().min(1).max(160),results:e.array(wl).min(1).max(4)}).superRefine((e,t)=>{new Set(e.results.map(e=>e.resource)).size!==e.results.length&&t.addIssue({code:`custom`,message:`duplicate resource`})}),El=`/api/v1/internal/publications/wechat/dispatch`,Dl=`/__radar/wechat-publication/dispatch`,Ol=bi.shape.generatedAt,kl=z.shape.records.element,Al=e.object({id:e.string().min(1),resetActionId:kl.shape.resetActionId,at:Ol,effects:e.array(kl.shape.effect).min(1).max(2),source:e.discriminatedUnion(`kind`,[e.object({kind:e.literal(`official_post`),sourceUrl:kl.shape.sourceUrl}),e.object({kind:e.literal(`manual`),officialConfirmationMissing:e.boolean()})])}),jl=e.object(z.shape).extend({records:e.array(e.object(kl.shape).extend({sourceUrl:kl.shape.sourceUrl.nullable(),confirmationId:e.string().min(1).nullable()})).max(i.analysis.actions*2)}).superRefine((e,t)=>{yi(e,t);for(let[n,r]of e.records.entries())r.basis===`execution_confirmation`!=(r.confirmationId!==null)&&t.addIssue({code:`custom`,message:`statistics_confirmation_identity_mismatch`,path:[`records`,n]}),r.basis===`announcement`&&r.sourceUrl===null&&t.addIssue({code:`custom`,message:`statistics_announcement_source_missing`,path:[`records`,n]})}),Ml=e.object({sourceWatermark:ie.shape.sourceWatermark,confirmations:e.array(Al),statistics:jl}),Nl=e.object(bi.shape).extend({contractVersion:e.literal(4),statistics:jl,confirmations:e.array(Al)}).superRefine((e,t)=>{let n=e=>t.addIssue({code:`custom`,message:e});new TextEncoder().encode(JSON.stringify(e)).byteLength>i.exportUtf8Bytes&&n(`export_utf8_size_limit_exceeded`);let r=new Map(e.confirmations.map(e=>[e.id,e])),a=new Map(e.actions.map(e=>[e.resetActionId,e]));a.size!==e.actions.length&&n(`export_action_identity_duplicate`),new Set(e.pendingResetActions.map(e=>e.resetActionId)).size!==e.pendingResetActions.length&&n(`export_pending_action_identity_duplicate`);let o=new Set(e.statistics.records.map(e=>e.resetActionId));for(let[t,r]of e.actions.entries()){Date.parse(r.firstAnnouncedAt)>Date.parse(e.generatedAt)&&n(`export_action_after_snapshot`);let i=e.actions.at(t-1);t>0&&i!==void 0&&Ol.safeParse(i.firstAnnouncedAt).success&&Ol.safeParse(r.firstAnnouncedAt).success&&Ue(i,r)>0&&n(`export_actions_not_stably_sorted`),Date.parse(r.firstAnnouncedAt)>=Date.parse(e.statistics.startAt)&&!o.has(r.resetActionId)&&n(`export_statistics_window_action_missing`)}r.size!==e.confirmations.length&&t.addIssue({code:`custom`,message:`confirmation_identity_duplicate`});for(let r of e.confirmations){let i=a.get(r.resetActionId);(i===void 0||Date.parse(r.at)>Date.parse(e.generatedAt))&&t.addIssue({code:`custom`,message:`confirmation_action_or_time_invalid`}),(new Set(r.effects).size!==r.effects.length||r.effects.some(e=>i!==void 0&&(e===null!=(i.resetEffects.state===`unknown`)||e!==null&&!i.resetEffects.values.some(t=>t===e))))&&n(`confirmation_effect_mismatch`);let o=r.source;o.kind===`official_post`&&!i?.noticeTimeline.some(e=>e.phase===`executed`&&e.sourceUrl===o.sourceUrl&&e.authoredAt===r.at)&&t.addIssue({code:`custom`,message:`confirmation_official_source_invalid`})}for(let i of e.statistics.records){let o=a.get(i.resetActionId),s=i.confirmationId===null?void 0:r.get(i.confirmationId);Date.parse(i.at)>Date.parse(e.generatedAt)&&n(`export_statistics_record_after_snapshot`),o!==void 0&&(o.resetEffects.state===`unknown`!=(i.effect===null)||i.effect!==null&&!o.resetEffects.values.some(e=>e===i.effect))&&n(`export_statistics_effect_mismatch`),(o===void 0||i.confirmationId!==null&&(s===void 0||s.resetActionId!==i.resetActionId||s.at!==i.at||!s.effects.includes(i.effect)))&&t.addIssue({code:`custom`,message:`statistics_confirmation_missing_or_mismatched`}),s!==void 0&&i.sourceUrl!==(s.source.kind===`official_post`?s.source.sourceUrl:null)&&n(`statistics_confirmation_source_mismatch`),i.basis===`announcement`&&!o?.noticeTimeline.some(e=>e.sourceUrl===i.sourceUrl&&e.authoredAt===i.at&&o.firstAnnouncedAt===i.at)&&t.addIssue({code:`custom`,message:`statistics_announcement_source_invalid`})}}),Pl=e=>Nl.parse(e);export{sn as RadarResetSourceContractErrorV2,Ss as activeRadarResetClue,Mc as compareRadarAiRadarEntries,ll as compareRadarAiRadarEntriesV2,Ac as compareRadarAiRadarPublicationTimes,vo as compareRadarNotificationTasks,Ue as compareRadarResetActionDetailsV1,C as compareRadarResetUtcTimestampsV1,ho as createRadarBrowserNotificationProjection,ro as createRadarCodexProgressCalendar,go as createRadarNotificationProjection,On as createRadarResetSourceErrorEnvelopeV2,Ir as encodeRadarActivityFile,Rr as encodeRadarActivityFileV2,ka as encodeRadarActivityFileV3,gn as encodeRadarResetDetailMultipartV2,Lr as encodeRadarTitledActivityFile,lt as formatRadarResetPositiveDecimalV2,ct as formatRadarResetUInt64DecimalV2,Bo as initialRadarBrowserSubscription,Jo as initialRadarBrowserSubscriptionV2,hl as parseRadarAiRadarEventV2,Lc as parseRadarAiRadarLatest,pl as parseRadarAiRadarLatestV2,Rc as parseRadarAiRadarMonth,ml as parseRadarAiRadarMonthV2,sc as parseRadarCodexModels,Na as parseRadarCodexProgressChangeV3,Pa as parseRadarCodexProgressChangesV3,Mn as parseRadarCodexProgressV1,Hn as parseRadarCodexProgressV2,Zn as parseRadarCodexProgressV3,rr as parseRadarCodexProgressV4,ma as parseRadarCodexProgressV5,zs as parseRadarCodexReleaseDirectory,Bs as parseRadarCodexReleaseMonth,Vs as parseRadarCodexReleaseNotes,Ge as parseRadarResetActionDetailV1,ci as parseRadarResetActionDetailV2,wi as parseRadarResetActionDetailV3,St as parseRadarResetActionSummaryV2,We as parseRadarResetAnalysisV1,xs as parseRadarResetClueSnapshot,xn as parseRadarResetDetailMultipartV2,Ke as parseRadarResetExportV1,ui as parseRadarResetExportV2,Si as parseRadarResetExportV3,Pl as parseRadarResetExportV4,qe as parseRadarResetPendingActionV1,li 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,Lo as projectRadarBrowserSubscriptionSelection,Yo as projectRadarBrowserSubscriptionV1,di as projectRadarResetExportV1FromV2,Ci as projectRadarResetExportV3FromV2,Je as projectRadarResetPrimarySourceV1,ji as projectRadarResetPublicActionToV2,P as radarActivityEventIdSchema,I as radarActivityFileSchema,lr as radarActivityFileUrl,Mr as radarActivityFileV2Schema,ur as radarActivityFileV2Url,Da as radarActivityFileV3Schema,ha as radarActivityFileV3Url,F as radarActivityMaxBytes,mr as radarActivityProgressSchema,kr as radarActivityProgressV2Schema,Sa as radarActivityProgressV3Schema,hr as radarActivityReactionCountsSchema,cr as radarActivityReactionIdSchema,N as radarActivityReactionIds,Vc as radarAiRadarContentLanguage,Jc as radarAiRadarDigestV2Schema,jc as radarAiRadarEntrySchema,al as radarAiRadarEntryV2Schema,yl as radarAiRadarEventUrl,Gc as radarAiRadarEventV2MaxBytes,fl as radarAiRadarEventV2Path,cl as radarAiRadarEventV2Schema,Ec as radarAiRadarFollowUpSchema,Zc as radarAiRadarFollowV2Schema,$ as radarAiRadarIdV2Schema,xc as radarAiRadarKindSchema,vc as radarAiRadarLatestMaxBytes,Fc as radarAiRadarLatestPath,Nc as radarAiRadarLatestSchema,Uc as radarAiRadarLatestV2MaxBytes,ul as radarAiRadarLatestV2Path,ol as radarAiRadarLatestV2Schema,Dc as radarAiRadarLeakSchema,$c as radarAiRadarLeakV2Schema,yc as radarAiRadarMonthMaxBytes,Ic as radarAiRadarMonthPath,Pc as radarAiRadarMonthSchema,Wc as radarAiRadarMonthV2MaxBytes,dl as radarAiRadarMonthV2Path,sl as radarAiRadarMonthV2Schema,Q as radarAiRadarPublicationTimeSchema,Tc as radarAiRadarSourceSchema,bc as radarAiRadarSourceStaleMs,Yc as radarAiRadarSourceV2Schema,Hc as radarAiRadarSourcesStale,bl as radarAiRadarStoryStatus,wc as radarAiRadarSummarySchema,kc as radarAiRadarTimeInWindow,Oc as radarAiRadarTimeView,Sc as radarAiRadarTitleSchema,Kc as radarAiRadarToolValues,Ga as radarAntigravityReleaseIdentitySchema,Ya as radarBrowserNotificationPageUrl,mo as radarBrowserNotificationProjectionSchema,lo as radarBrowserNotificationTargetUrlSchema,po as radarBrowserNotificationTopicSchema,Ao as radarBrowserRegistrationSchema,zo as radarBrowserSubscriptionErrorRes,Po as radarBrowserSubscriptionFailureSchema,Fo as radarBrowserSubscriptionOperationSchema,No as radarBrowserSubscriptionReadReq,Ro as radarBrowserSubscriptionRes,Mo as radarBrowserSubscriptionSaveReq,Go as radarBrowserSubscriptionSaveV2Req,qo as radarBrowserSubscriptionV2Res,Io as radarBrowserSubscriptionViewSchema,Ko as radarBrowserSubscriptionViewV2Schema,wo as radarBrowserSubscriptionsPath,Oo as radarBrowserTopicsSchema,Vo as radarBrowserTopicsV2Schema,Wa as radarClaudeReleaseIdentitySchema,Gr as radarCodexGuessChoiceSchema,Xr as radarCodexGuessErrorSchema,Kr as radarCodexGuessSaveReqSchema,Yr as radarCodexGuessViewSchema,qa as radarCodexModelIdSchema,Qa as radarCodexModelUrl,rc as radarCodexModelsMaxBytes,lc as radarCodexModelsPath,oc as radarCodexModelsSchema,$a as radarCodexProgressCalendar,zr as radarCodexProgressChangeSchema,Vr as radarCodexProgressChangeV2Schema,ja as radarCodexProgressChangeV3Schema,Br as radarCodexProgressChangesV1Schema,Hr as radarCodexProgressChangesV2Schema,Ma as radarCodexProgressChangesV3Schema,A as radarCodexProgressEntrySchema,Wn as radarCodexProgressEntryV3Schema,ca as radarCodexProgressEntryV5Schema,oa as radarCodexProgressImprovementV5Schema,Nn as radarCodexProgressOutcome,na as radarCodexProgressPostRoleV5Schema,ra as radarCodexProgressPostV5Schema,ia as radarCodexProgressPostsV5Schema,sa as radarCodexProgressResetEntryV5Schema,Xn as radarCodexProgressScore,M as radarCodexProgressTitleV3Schema,j as radarCodexProgressV1Schema,Fn as radarCodexProgressV2MaxBytes,Vn as radarCodexProgressV2Schema,Un as radarCodexProgressV3MaxBytes,Yn as radarCodexProgressV3Schema,Qn as radarCodexProgressV4MaxBytes,nr as radarCodexProgressV4Schema,aa as radarCodexProgressV5MaxBytes,pa as radarCodexProgressV5Schema,Es as radarCodexReleaseDirectoryMaxBytes,Qs as radarCodexReleaseDirectoryPath,Is as radarCodexReleaseDirectorySchema,Ua as radarCodexReleaseIdentitySchema,Ds as radarCodexReleaseMonthMaxBytes,$s as radarCodexReleaseMonthPath,Ls as radarCodexReleaseMonthSchema,Os as radarCodexReleaseNotesMaxBytes,ec as radarCodexReleaseNotesPath,Rs as radarCodexReleaseNotesSchema,Ps as radarCodexReleaseSectionsSchema,Xa as radarCodexReleaseUrl,ks as radarCodexTimePointSchema,xl as radarCompactTitle,$o as radarImprovementColumnPath,ss as radarImprovementEligibilityReq,cs as radarImprovementEligibilityRes,ns as radarImprovementEntrySchema,ls as radarImprovementErrorRes,rs as radarImprovementHeadReq,is as radarImprovementHeadRes,Qo as radarImprovementPageMaxBytes,as as radarImprovementPageReq,os as radarImprovementPageRes,Zo as radarImprovementPageSize,fo as radarNotificationProjectionSchema,uo as radarNotificationTargetSchema,bo as radarNotificationTaskPageSize,_o as radarNotificationTaskSchema,yo as radarNotificationTasksPath,So as radarNotificationTasksReq,Co as radarNotificationTasksRes,io as radarNotificationTopicSchema,ao as radarNotificationTopicsSchema,Ys as radarReleaseDirectoryPath,Ka as radarReleaseIdentitySchema,Xs as radarReleaseMonthPath,Zs as radarReleaseNotesPath,Ha as radarReleaseProductSchema,J as radarReleaseSchemas,Va as radarReleaseToolSchema,Za as radarReleaseUrl,x as radarResetActionDetailV1Schema,L as radarResetActionDetailV2Schema,fi 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,_s as radarResetClueLifetimeMs,vs as radarResetClueMaxBytes,gs as radarResetCluePath,ys as radarResetClueSchema,bs as radarResetClueSnapshotSchema,Al as radarResetConfirmationSchema,Ml as radarResetConfirmationsResponseSchema,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,si as radarResetExportV2Schema,bi as radarResetExportV3Schema,Nl as radarResetExportV4Schema,ei as radarResetKindNoticeV2Schema,Qi as radarResetManagementActionSchema,Gi as radarResetManagementOperationSchema,Wi as radarResetManagementProductSchema,$i as radarResetManagementResSchema,Zi as radarResetManualApplyReqSchema,Ui as radarResetManualCopySchema,Ki as radarResetManualDraftSchema,Yi as radarResetManualDraftSeedSchema,qi as radarResetManualPreviewReqSchema,Xi as radarResetManualPreviewResSchema,ea as radarResetManualResultResSchema,Le as radarResetNoticeKindValues,S as radarResetPendingActionV1Schema,oi as radarResetPendingActionV2Schema,l as radarResetPlanValues,w as radarResetPositiveDecimalV2Schema,Di as radarResetProductPublicRecordsCorePath,Bi as radarResetProductPublicRecordsV1Schema,Ei as radarResetProductRecordsProductValues,s as radarResetProductValues,Ni as radarResetPublicActionV1Schema,i as radarResetPublicDataLimits,E as radarResetPublicIdV2Schema,Ti as radarResetPublicRecordsCorePath,zi 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,Zr as radarResetSourceTranslationsSchema,xi as radarResetStatisticsResponseV3Schema,z as radarResetStatisticsV1Schema,jl as radarResetStatisticsV2Schema,it as radarResetUInt64DecimalV2Schema,st as radarResetUInt64DecimalV2ToBigInt,Pi as radarResetUnexecutedActionV1Schema,T as radarResetUtcTimestampV2Schema,Ot as radarResetWithdrawnActionItemV2Schema,Fi as radarResetWithdrawnActionV1Schema,ds as radarTiboSourceStatusMaxBytes,us as radarTiboSourceStatusPath,ms as radarTiboSourceStatusSchema,Er as radarTitledActivityFileSchema,Cr as radarTitledActivityProgressSchema,nc as radarToolReleasePublicationEventSchema,za as radarWebsiteLegacyChinesePrefix,Ra as radarWebsiteLocalePrefixes,La as radarWebsiteLocaleSlugs,Ia as radarWebsiteLocales,Fa as radarWebsiteOrigin,Ba as radarWebsitePagePaths,Ja as radarWebsitePageUrl,El as radarWechatDispatchPath,Cl as radarWechatDispatchRequestSchema,Tl as radarWechatDispatchResponseSchema,wl as radarWechatDispatchResultSchema,Dl as radarWechatPrivateDispatchPath,Nr as readRadarActivityFile,Fr as readRadarActivityFileV2,Oa as readRadarActivityFileV3,vl as readRadarAiRadarEventV2,zc as readRadarAiRadarLatest,gl as readRadarAiRadarLatestV2,Bc as readRadarAiRadarMonth,_l as readRadarAiRadarMonthV2,cc as readRadarCodexModels,Gs as readRadarCodexReleaseDirectory,Ks as readRadarCodexReleaseMonth,qs as readRadarCodexReleaseNotes,Hs as readRadarReleaseDirectory,Us as readRadarReleaseMonth,Ws as readRadarReleaseNotes,Cs as readRadarResetClueSnapshot,hs as readRadarTiboSourceStatus,Pr as readRadarTitledActivityFile,jo as redactRadarBrowserRegistrationReferences,yi as refineRadarResetStatistics,Tn as toSafeCauseSnapshotV2,Xo as upgradeRadarBrowserSubscriptionCommandV1};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@closerepo/radar-contracts",
3
- "version": "13.3.0",
3
+ "version": "13.4.0",
4
4
  "type": "module",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {