@nuxtseo/protocol 0.5.0 → 0.5.3

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.
@@ -18,6 +18,10 @@ export declare const actionShowQuerySchema: z.ZodObject<{
18
18
  export declare const actionResolveBodySchema: z.ZodObject<{
19
19
  artifactVersion: z.ZodString;
20
20
  }, z.core.$strict>;
21
+ export declare const actionDismissBodySchema: z.ZodObject<{
22
+ artifactVersion: z.ZodString;
23
+ note: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strict>;
21
25
  /**
22
26
  * `url` is the URL the finding was observed on and stays exactly as observed —
23
27
  * it is what verification re-checks. `redirectsTo` is the read-time answer to
@@ -2724,11 +2728,9 @@ export declare const actionDismissResponseSchema: import("./core.js").Compatible
2724
2728
  }, z.core.$strip>>;
2725
2729
  export type ActionDismiss = z.output<typeof actionDismissDataSchema.client>;
2726
2730
  /**
2727
- * Dismissing is the opposite decision from resolving: the page stays gone.
2728
- * It is admitted only for a broken-page Action whose evidence is complete and
2729
- * shows no internal referrer, so a caller cannot use it to hide work. The same
2730
- * `artifactVersion` fence as resolve applies, so a decision made against stale
2731
- * evidence is rejected rather than applied.
2731
+ * An explicit note records the owner's decision to dismiss reviewed work.
2732
+ * Without a note, only complete, unlinked 404/410 evidence admits dismissal.
2733
+ * Both paths retain the artifactVersion fence and never claim a verified fix.
2732
2734
  */
2733
2735
  export declare const actionDismissOperation: {
2734
2736
  readonly id: 'actions.dismiss';
@@ -2756,6 +2758,7 @@ export declare const actionDismissOperation: {
2756
2758
  readonly headers: null;
2757
2759
  readonly body: z.ZodObject<{
2758
2760
  artifactVersion: z.ZodString;
2761
+ note: z.ZodOptional<z.ZodString>;
2759
2762
  }, z.core.$strict>;
2760
2763
  };
2761
2764
  readonly responses: {
@@ -2856,7 +2859,7 @@ export declare const actionDismissOperation: {
2856
2859
  };
2857
2860
  readonly docs: {
2858
2861
  readonly summary: 'Dismiss an action';
2859
- readonly description: 'Dismisses a broken-page action when its evidence is complete and shows no internal referrers, so the removed page stays removed. It is rejected when the action has other evidence, when it is already decided, or when the artifactVersion no longer matches. The action stays dismissed until a person restores it.';
2862
+ readonly description: 'Records an owner decision to dismiss an action when a note explains why it is intentional or incorrect. Without a note, only complete 404 or 410 evidence with no internal referrers is accepted. Stale details and decided actions are rejected. Dismissal preserves observations and does not verify a fix. The action stays dismissed until a person restores it.';
2860
2863
  readonly tags: readonly ["Actions"];
2861
2864
  readonly examples: readonly [{
2862
2865
  readonly request: {
@@ -2882,6 +2885,31 @@ export declare const actionDismissOperation: {
2882
2885
  };
2883
2886
  };
2884
2887
  };
2888
+ }, {
2889
+ readonly request: {
2890
+ readonly params: {
2891
+ readonly siteId: 'site_01JXYZ';
2892
+ readonly actionId: 'action_01JXYZ';
2893
+ };
2894
+ readonly body: {
2895
+ readonly artifactVersion: 'te2:action_01JXYZ:scope';
2896
+ readonly note: 'Temporary retired sitemap. Review after the recovery gate.';
2897
+ };
2898
+ };
2899
+ readonly response: {
2900
+ readonly status: 200;
2901
+ readonly body: {
2902
+ readonly data: {
2903
+ readonly actionId: 'action_01JXYZ';
2904
+ readonly status: 'dismissed';
2905
+ readonly message: 'Dismissed. Your note is saved. No fix was verified.';
2906
+ };
2907
+ readonly meta: {
2908
+ readonly requestId: 'req_01JXYZ';
2909
+ readonly version: '1.0';
2910
+ };
2911
+ };
2912
+ };
2885
2913
  }];
2886
2914
  };
2887
2915
  };
@@ -3920,6 +3948,7 @@ export declare const actionsV1Registry: import("./core.js").PublicV1Registry<{
3920
3948
  readonly headers: null;
3921
3949
  readonly body: z.ZodObject<{
3922
3950
  artifactVersion: z.ZodString;
3951
+ note: z.ZodOptional<z.ZodString>;
3923
3952
  }, z.core.$strict>;
3924
3953
  };
3925
3954
  readonly responses: {
@@ -4020,7 +4049,7 @@ export declare const actionsV1Registry: import("./core.js").PublicV1Registry<{
4020
4049
  };
4021
4050
  readonly docs: {
4022
4051
  readonly summary: 'Dismiss an action';
4023
- readonly description: 'Dismisses a broken-page action when its evidence is complete and shows no internal referrers, so the removed page stays removed. It is rejected when the action has other evidence, when it is already decided, or when the artifactVersion no longer matches. The action stays dismissed until a person restores it.';
4052
+ readonly description: 'Records an owner decision to dismiss an action when a note explains why it is intentional or incorrect. Without a note, only complete 404 or 410 evidence with no internal referrers is accepted. Stale details and decided actions are rejected. Dismissal preserves observations and does not verify a fix. The action stays dismissed until a person restores it.';
4024
4053
  readonly tags: readonly ["Actions"];
4025
4054
  readonly examples: readonly [{
4026
4055
  readonly request: {
@@ -4046,6 +4075,31 @@ export declare const actionsV1Registry: import("./core.js").PublicV1Registry<{
4046
4075
  };
4047
4076
  };
4048
4077
  };
4078
+ }, {
4079
+ readonly request: {
4080
+ readonly params: {
4081
+ readonly siteId: 'site_01JXYZ';
4082
+ readonly actionId: 'action_01JXYZ';
4083
+ };
4084
+ readonly body: {
4085
+ readonly artifactVersion: 'te2:action_01JXYZ:scope';
4086
+ readonly note: 'Temporary retired sitemap. Review after the recovery gate.';
4087
+ };
4088
+ };
4089
+ readonly response: {
4090
+ readonly status: 200;
4091
+ readonly body: {
4092
+ readonly data: {
4093
+ readonly actionId: 'action_01JXYZ';
4094
+ readonly status: 'dismissed';
4095
+ readonly message: 'Dismissed. Your note is saved. No fix was verified.';
4096
+ };
4097
+ readonly meta: {
4098
+ readonly requestId: 'req_01JXYZ';
4099
+ readonly version: '1.0';
4100
+ };
4101
+ };
4102
+ };
4049
4103
  }];
4050
4104
  };
4051
4105
  };
@@ -19,6 +19,10 @@ export const actionShowQuerySchema = schema.strictObject({
19
19
  export const actionResolveBodySchema = schema.strictObject({
20
20
  artifactVersion: schema.string().min(1),
21
21
  });
22
+ export const actionDismissBodySchema = schema.strictObject({
23
+ artifactVersion: schema.string().min(1),
24
+ note: schema.string().trim().min(1).max(2000).optional(),
25
+ });
22
26
  /**
23
27
  * `url` is the URL the finding was observed on and stays exactly as observed —
24
28
  * it is what verification re-checks. `redirectsTo` is the read-time answer to
@@ -529,11 +533,9 @@ export const actionDismissDataSchema = defineResponseObject({
529
533
  });
530
534
  export const actionDismissResponseSchema = defineSuccessEnvelope(actionDismissDataSchema);
531
535
  /**
532
- * Dismissing is the opposite decision from resolving: the page stays gone.
533
- * It is admitted only for a broken-page Action whose evidence is complete and
534
- * shows no internal referrer, so a caller cannot use it to hide work. The same
535
- * `artifactVersion` fence as resolve applies, so a decision made against stale
536
- * evidence is rejected rather than applied.
536
+ * An explicit note records the owner's decision to dismiss reviewed work.
537
+ * Without a note, only complete, unlinked 404/410 evidence admits dismissal.
538
+ * Both paths retain the artifactVersion fence and never claim a verified fix.
537
539
  */
538
540
  export const actionDismissOperation = defineOperation({
539
541
  id: 'actions.dismiss',
@@ -547,7 +549,7 @@ export const actionDismissOperation = defineOperation({
547
549
  minimumRole: 'member',
548
550
  ownership: 'site',
549
551
  },
550
- request: { params: actionParamsSchema, query: null, headers: null, body: actionResolveBodySchema },
552
+ request: { params: actionParamsSchema, query: null, headers: null, body: actionDismissBodySchema },
551
553
  responses: { 200: actionDismissResponseSchema },
552
554
  errors: [
553
555
  'invalid_request',
@@ -576,7 +578,7 @@ export const actionDismissOperation = defineOperation({
576
578
  lifecycle: { introduced: '1.2.0' },
577
579
  docs: {
578
580
  summary: 'Dismiss an action',
579
- description: 'Dismisses a broken-page action when its evidence is complete and shows no internal referrers, so the removed page stays removed. It is rejected when the action has other evidence, when it is already decided, or when the artifactVersion no longer matches. The action stays dismissed until a person restores it.',
581
+ description: 'Records an owner decision to dismiss an action when a note explains why it is intentional or incorrect. Without a note, only complete 404 or 410 evidence with no internal referrers is accepted. Stale details and decided actions are rejected. Dismissal preserves observations and does not verify a fix. The action stays dismissed until a person restores it.',
580
582
  tags: ['Actions'],
581
583
  examples: [{
582
584
  request: {
@@ -590,6 +592,21 @@ export const actionDismissOperation = defineOperation({
590
592
  meta: { requestId: 'req_01JXYZ', version: '1.0' },
591
593
  },
592
594
  },
595
+ }, {
596
+ request: {
597
+ params: { siteId: 'site_01JXYZ', actionId: 'action_01JXYZ' },
598
+ body: {
599
+ artifactVersion: 'te2:action_01JXYZ:scope',
600
+ note: 'Temporary retired sitemap. Review after the recovery gate.',
601
+ },
602
+ },
603
+ response: {
604
+ status: 200,
605
+ body: {
606
+ data: { actionId: 'action_01JXYZ', status: 'dismissed', message: 'Dismissed. Your note is saved. No fix was verified.' },
607
+ meta: { requestId: 'req_01JXYZ', version: '1.0' },
608
+ },
609
+ },
593
610
  }],
594
611
  },
595
612
  });
package/dist/v1/gsc.d.ts CHANGED
@@ -1699,6 +1699,12 @@ export declare const indexingDiagnosticsDataSchema: {
1699
1699
  }, z.core.$strip>, z.ZodObject<{
1700
1700
  readonly view: z.ZodLiteral<"urls">;
1701
1701
  readonly total: z.ZodNumber;
1702
+ /** Lookahead reports a floor until the terminal page; it does not count every matching URL. */
1703
+ readonly totalSemantics: z.ZodEnum<{
1704
+ exact: "exact";
1705
+ "lower-bound": "lower-bound";
1706
+ unknown: "unknown";
1707
+ }>;
1702
1708
  readonly limit: z.ZodNumber;
1703
1709
  readonly offset: z.ZodNumber;
1704
1710
  readonly hasMore: z.ZodBoolean;
@@ -1746,6 +1752,11 @@ export declare const indexingDiagnosticsDataSchema: {
1746
1752
  }, z.core.$strip>, z.ZodObject<{
1747
1753
  readonly view: z.ZodLiteral<"urls">;
1748
1754
  readonly total: z.ZodNumber;
1755
+ readonly totalSemantics: z.ZodEnum<{
1756
+ exact: "exact";
1757
+ "lower-bound": "lower-bound";
1758
+ unknown: "unknown";
1759
+ }>;
1749
1760
  readonly limit: z.ZodNumber;
1750
1761
  readonly offset: z.ZodNumber;
1751
1762
  readonly hasMore: z.ZodBoolean;
@@ -1795,6 +1806,12 @@ export declare const indexingDiagnosticsResponseSchema: import("./core.js").Comp
1795
1806
  }, z.core.$strip>, z.ZodObject<{
1796
1807
  readonly view: z.ZodLiteral<"urls">;
1797
1808
  readonly total: z.ZodNumber;
1809
+ /** Lookahead reports a floor until the terminal page; it does not count every matching URL. */
1810
+ readonly totalSemantics: z.ZodEnum<{
1811
+ exact: "exact";
1812
+ "lower-bound": "lower-bound";
1813
+ unknown: "unknown";
1814
+ }>;
1798
1815
  readonly limit: z.ZodNumber;
1799
1816
  readonly offset: z.ZodNumber;
1800
1817
  readonly hasMore: z.ZodBoolean;
@@ -1847,6 +1864,11 @@ export declare const indexingDiagnosticsResponseSchema: import("./core.js").Comp
1847
1864
  }, z.core.$strip>, z.ZodObject<{
1848
1865
  readonly view: z.ZodLiteral<"urls">;
1849
1866
  readonly total: z.ZodNumber;
1867
+ readonly totalSemantics: z.ZodEnum<{
1868
+ exact: "exact";
1869
+ "lower-bound": "lower-bound";
1870
+ unknown: "unknown";
1871
+ }>;
1850
1872
  readonly limit: z.ZodNumber;
1851
1873
  readonly offset: z.ZodNumber;
1852
1874
  readonly hasMore: z.ZodBoolean;
@@ -3599,6 +3621,12 @@ export declare const indexingDiagnosticsReadOperation: {
3599
3621
  }, z.core.$strip>, z.ZodObject<{
3600
3622
  readonly view: z.ZodLiteral<"urls">;
3601
3623
  readonly total: z.ZodNumber;
3624
+ /** Lookahead reports a floor until the terminal page; it does not count every matching URL. */
3625
+ readonly totalSemantics: z.ZodEnum<{
3626
+ exact: "exact";
3627
+ "lower-bound": "lower-bound";
3628
+ unknown: "unknown";
3629
+ }>;
3602
3630
  readonly limit: z.ZodNumber;
3603
3631
  readonly offset: z.ZodNumber;
3604
3632
  readonly hasMore: z.ZodBoolean;
@@ -3651,6 +3679,11 @@ export declare const indexingDiagnosticsReadOperation: {
3651
3679
  }, z.core.$strip>, z.ZodObject<{
3652
3680
  readonly view: z.ZodLiteral<"urls">;
3653
3681
  readonly total: z.ZodNumber;
3682
+ readonly totalSemantics: z.ZodEnum<{
3683
+ exact: "exact";
3684
+ "lower-bound": "lower-bound";
3685
+ unknown: "unknown";
3686
+ }>;
3654
3687
  readonly limit: z.ZodNumber;
3655
3688
  readonly offset: z.ZodNumber;
3656
3689
  readonly hasMore: z.ZodBoolean;
@@ -6018,6 +6051,12 @@ export declare const searchV1Registry: import("./core.js").PublicV1Registry<{
6018
6051
  }, z.core.$strip>, z.ZodObject<{
6019
6052
  readonly view: z.ZodLiteral<"urls">;
6020
6053
  readonly total: z.ZodNumber;
6054
+ /** Lookahead reports a floor until the terminal page; it does not count every matching URL. */
6055
+ readonly totalSemantics: z.ZodEnum<{
6056
+ exact: "exact";
6057
+ "lower-bound": "lower-bound";
6058
+ unknown: "unknown";
6059
+ }>;
6021
6060
  readonly limit: z.ZodNumber;
6022
6061
  readonly offset: z.ZodNumber;
6023
6062
  readonly hasMore: z.ZodBoolean;
@@ -6070,6 +6109,11 @@ export declare const searchV1Registry: import("./core.js").PublicV1Registry<{
6070
6109
  }, z.core.$strip>, z.ZodObject<{
6071
6110
  readonly view: z.ZodLiteral<"urls">;
6072
6111
  readonly total: z.ZodNumber;
6112
+ readonly totalSemantics: z.ZodEnum<{
6113
+ exact: "exact";
6114
+ "lower-bound": "lower-bound";
6115
+ unknown: "unknown";
6116
+ }>;
6073
6117
  readonly limit: z.ZodNumber;
6074
6118
  readonly offset: z.ZodNumber;
6075
6119
  readonly hasMore: z.ZodBoolean;
package/dist/v1/gsc.js CHANGED
@@ -375,6 +375,8 @@ const diagnosticsUrlSchema = defineResponseObject({
375
375
  const diagnosticsUrlsDataSchema = defineResponseObject({
376
376
  view: schema.literal('urls'),
377
377
  total: schema.number().int().nonnegative(),
378
+ /** Lookahead reports a floor until the terminal page; it does not count every matching URL. */
379
+ totalSemantics: schema.enum(['exact', 'lower-bound', 'unknown']),
378
380
  limit: schema.number().int().positive(),
379
381
  offset: schema.number().int().nonnegative(),
380
382
  hasMore: schema.boolean(),
@@ -382,6 +384,7 @@ const diagnosticsUrlsDataSchema = defineResponseObject({
382
384
  }, {
383
385
  view: schema.literal('urls'),
384
386
  total: schema.number().int().nonnegative(),
387
+ totalSemantics: schema.enum(['exact', 'lower-bound', 'unknown']),
385
388
  limit: schema.number().int().positive(),
386
389
  offset: schema.number().int().nonnegative(),
387
390
  hasMore: schema.boolean(),