File size: 3,066 Bytes
50ae831
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {
    "ExperimentalFeature": {
      "properties": {
        "announcement": {
          "description": "Announcement copy shown to users when the feature is introduced. Null when this feature is not in beta.",
          "type": [
            "string",
            "null"
          ]
        },
        "defaultEnabled": {
          "description": "Whether this feature is enabled by default.",
          "type": "boolean"
        },
        "description": {
          "description": "Short summary describing what the feature does. Null when this feature is not in beta.",
          "type": [
            "string",
            "null"
          ]
        },
        "displayName": {
          "description": "User-facing display name shown in the experimental features UI. Null when this feature is not in beta.",
          "type": [
            "string",
            "null"
          ]
        },
        "enabled": {
          "description": "Whether this feature is currently enabled in the loaded config.",
          "type": "boolean"
        },
        "name": {
          "description": "Stable key used in config.toml and CLI flag toggles.",
          "type": "string"
        },
        "stage": {
          "allOf": [
            {
              "$ref": "#/definitions/ExperimentalFeatureStage"
            }
          ],
          "description": "Lifecycle stage of this feature flag."
        }
      },
      "required": [
        "defaultEnabled",
        "enabled",
        "name",
        "stage"
      ],
      "type": "object"
    },
    "ExperimentalFeatureStage": {
      "oneOf": [
        {
          "description": "Feature is available for user testing and feedback.",
          "enum": [
            "beta"
          ],
          "type": "string"
        },
        {
          "description": "Feature is still being built and not ready for broad use.",
          "enum": [
            "underDevelopment"
          ],
          "type": "string"
        },
        {
          "description": "Feature is production-ready.",
          "enum": [
            "stable"
          ],
          "type": "string"
        },
        {
          "description": "Feature is deprecated and should be avoided.",
          "enum": [
            "deprecated"
          ],
          "type": "string"
        },
        {
          "description": "Feature flag is retained only for backwards compatibility.",
          "enum": [
            "removed"
          ],
          "type": "string"
        }
      ]
    }
  },
  "properties": {
    "data": {
      "items": {
        "$ref": "#/definitions/ExperimentalFeature"
      },
      "type": "array"
    },
    "nextCursor": {
      "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "data"
  ],
  "title": "ExperimentalFeatureListResponse",
  "type": "object"
}