@shipeasy/openapi 3.0.0 → 3.1.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/{chunk-7T77D5YO.js → chunk-UV333BIK.js} +2 -5
- package/dist/chunk-UV333BIK.js.map +1 -0
- package/dist/{client-DzEqdN5N.d.ts → client-yqGYju-M.d.ts} +5 -5
- package/dist/client.d.ts +1 -1
- package/dist/custom.js +2 -1
- package/dist/custom.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/schemas.d.ts +7 -54
- package/dist/schemas.js +1 -1
- package/openapi.json +4 -7
- package/openapi.yaml +4 -7
- package/package.json +1 -1
- package/spec/components/schemas/ops.yaml +21 -22
- package/spec/paths/ops.yaml +3 -3
- package/dist/chunk-7T77D5YO.js.map +0 -1
package/dist/schemas.d.ts
CHANGED
|
@@ -2754,13 +2754,11 @@ declare const zApproveEventResponse: z.ZodObject<{
|
|
|
2754
2754
|
id: z.ZodString;
|
|
2755
2755
|
}, z.core.$strip>;
|
|
2756
2756
|
/**
|
|
2757
|
-
* Lifecycle status of a queue item. The working flow is `open` → `
|
|
2757
|
+
* Lifecycle status of a queue item. The working flow is `open` → `in_progress` → `ready_for_qa` → `resolved` (or `wont_fix`, terminal from any earlier stage). `blocked` marks an item that can't progress until an external dependency clears — a working state a human sets and clears. `ready_for_qa` is what a developer sets once a fix lands; `resolved` is the QA sign-off, normally flipped in the dashboard after verification — set it directly from code only when the fix has been verified end-to-end. `investigating_by_ai` is a system-owned display state — set when the AI agent (Jarvis) picks an item up to investigate, never chosen by a human — so it is shown but not offered as a manual choice. `pending_approval` is the one human-gated holding state: it parks an item OUT of the work queue until a human promotes it to `open` in the dashboard, so `GET /api/admin/ops` excludes it under `status=all`/default and returns it only when requested as an exact `status`. It covers untriaged inbound that must never be auto-implemented — connector requests filed from a customer's connectors panel, and questions funnelled in from the "Stuck in onboarding?" assistant — where approving means flipping the status to `open`. Two earlier values were removed in favour of this single gate: `triage` (the onboarding-help bucket, now `pending_approval`) and `triaged` (a redundant "looked at but not started" step, now plain `open`).
|
|
2758
2758
|
*/
|
|
2759
2759
|
declare const zOpsItemStatus: z.ZodEnum<{
|
|
2760
2760
|
open: "open";
|
|
2761
2761
|
pending_approval: "pending_approval";
|
|
2762
|
-
triage: "triage";
|
|
2763
|
-
triaged: "triaged";
|
|
2764
2762
|
investigating_by_ai: "investigating_by_ai";
|
|
2765
2763
|
in_progress: "in_progress";
|
|
2766
2764
|
blocked: "blocked";
|
|
@@ -2778,18 +2776,17 @@ declare const zOpsItemPriority: z.ZodEnum<{
|
|
|
2778
2776
|
critical: "critical";
|
|
2779
2777
|
}>;
|
|
2780
2778
|
/**
|
|
2781
|
-
* Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as "what AI did" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `
|
|
2779
|
+
* Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as "what AI did" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `backlog` or `investigated`/`detected` for auto-filed error/alert tickets. `backlog` is the single "nothing has happened yet" state — how urgent that is reads off `priority`, not off a separate state, and its one action is to hand the item to an agent. `pr_merged` is derived client-side by scanning the linked pull request on GitHub, so it is accepted on write but not currently emitted by the API. Absent on rows filed before the field existed — consumers should treat a missing value as "derive from the other fields".
|
|
2782
2780
|
*/
|
|
2783
2781
|
declare const zOpsInvestigationState: z.ZodEnum<{
|
|
2784
2782
|
pending_approval: "pending_approval";
|
|
2785
2783
|
ready_for_qa: "ready_for_qa";
|
|
2786
2784
|
pr_ready: "pr_ready";
|
|
2785
|
+
pr_merged: "pr_merged";
|
|
2787
2786
|
investigated: "investigated";
|
|
2788
2787
|
detected: "detected";
|
|
2789
2788
|
question: "question";
|
|
2790
|
-
needs_triage: "needs_triage";
|
|
2791
2789
|
working: "working";
|
|
2792
|
-
triaged_low: "triaged_low";
|
|
2793
2790
|
backlog: "backlog";
|
|
2794
2791
|
}>;
|
|
2795
2792
|
/**
|
|
@@ -3213,8 +3210,6 @@ declare const zListOpsItemsResponse: z.ZodArray<z.ZodObject<{
|
|
|
3213
3210
|
status: z.ZodEnum<{
|
|
3214
3211
|
open: "open";
|
|
3215
3212
|
pending_approval: "pending_approval";
|
|
3216
|
-
triage: "triage";
|
|
3217
|
-
triaged: "triaged";
|
|
3218
3213
|
investigating_by_ai: "investigating_by_ai";
|
|
3219
3214
|
in_progress: "in_progress";
|
|
3220
3215
|
blocked: "blocked";
|
|
@@ -3233,12 +3228,11 @@ declare const zListOpsItemsResponse: z.ZodArray<z.ZodObject<{
|
|
|
3233
3228
|
pending_approval: "pending_approval";
|
|
3234
3229
|
ready_for_qa: "ready_for_qa";
|
|
3235
3230
|
pr_ready: "pr_ready";
|
|
3231
|
+
pr_merged: "pr_merged";
|
|
3236
3232
|
investigated: "investigated";
|
|
3237
3233
|
detected: "detected";
|
|
3238
3234
|
question: "question";
|
|
3239
|
-
needs_triage: "needs_triage";
|
|
3240
3235
|
working: "working";
|
|
3241
|
-
triaged_low: "triaged_low";
|
|
3242
3236
|
backlog: "backlog";
|
|
3243
3237
|
}>>>;
|
|
3244
3238
|
source: z.ZodEnum<{
|
|
@@ -3470,8 +3464,6 @@ declare const zCreateBugRequest: z.ZodObject<{
|
|
|
3470
3464
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3471
3465
|
open: "open";
|
|
3472
3466
|
pending_approval: "pending_approval";
|
|
3473
|
-
triage: "triage";
|
|
3474
|
-
triaged: "triaged";
|
|
3475
3467
|
investigating_by_ai: "investigating_by_ai";
|
|
3476
3468
|
in_progress: "in_progress";
|
|
3477
3469
|
blocked: "blocked";
|
|
@@ -3514,8 +3506,6 @@ declare const zCreateFeatureRequestRequest: z.ZodObject<{
|
|
|
3514
3506
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3515
3507
|
open: "open";
|
|
3516
3508
|
pending_approval: "pending_approval";
|
|
3517
|
-
triage: "triage";
|
|
3518
|
-
triaged: "triaged";
|
|
3519
3509
|
investigating_by_ai: "investigating_by_ai";
|
|
3520
3510
|
in_progress: "in_progress";
|
|
3521
3511
|
blocked: "blocked";
|
|
@@ -3555,8 +3545,6 @@ declare const zCreateOpsItemRequest: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
3555
3545
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3556
3546
|
open: "open";
|
|
3557
3547
|
pending_approval: "pending_approval";
|
|
3558
|
-
triage: "triage";
|
|
3559
|
-
triaged: "triaged";
|
|
3560
3548
|
investigating_by_ai: "investigating_by_ai";
|
|
3561
3549
|
in_progress: "in_progress";
|
|
3562
3550
|
blocked: "blocked";
|
|
@@ -3593,8 +3581,6 @@ declare const zCreateOpsItemRequest: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
3593
3581
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3594
3582
|
open: "open";
|
|
3595
3583
|
pending_approval: "pending_approval";
|
|
3596
|
-
triage: "triage";
|
|
3597
|
-
triaged: "triaged";
|
|
3598
3584
|
investigating_by_ai: "investigating_by_ai";
|
|
3599
3585
|
in_progress: "in_progress";
|
|
3600
3586
|
blocked: "blocked";
|
|
@@ -3664,8 +3650,6 @@ declare const zGetOpsItemResponse: z.ZodObject<{
|
|
|
3664
3650
|
status: z.ZodEnum<{
|
|
3665
3651
|
open: "open";
|
|
3666
3652
|
pending_approval: "pending_approval";
|
|
3667
|
-
triage: "triage";
|
|
3668
|
-
triaged: "triaged";
|
|
3669
3653
|
investigating_by_ai: "investigating_by_ai";
|
|
3670
3654
|
in_progress: "in_progress";
|
|
3671
3655
|
blocked: "blocked";
|
|
@@ -3688,12 +3672,11 @@ declare const zGetOpsItemResponse: z.ZodObject<{
|
|
|
3688
3672
|
pending_approval: "pending_approval";
|
|
3689
3673
|
ready_for_qa: "ready_for_qa";
|
|
3690
3674
|
pr_ready: "pr_ready";
|
|
3675
|
+
pr_merged: "pr_merged";
|
|
3691
3676
|
investigated: "investigated";
|
|
3692
3677
|
detected: "detected";
|
|
3693
3678
|
question: "question";
|
|
3694
|
-
needs_triage: "needs_triage";
|
|
3695
3679
|
working: "working";
|
|
3696
|
-
triaged_low: "triaged_low";
|
|
3697
3680
|
backlog: "backlog";
|
|
3698
3681
|
}>>>;
|
|
3699
3682
|
reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
@@ -3917,8 +3900,6 @@ declare const zUpdateBugRequest: z.ZodObject<{
|
|
|
3917
3900
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3918
3901
|
open: "open";
|
|
3919
3902
|
pending_approval: "pending_approval";
|
|
3920
|
-
triage: "triage";
|
|
3921
|
-
triaged: "triaged";
|
|
3922
3903
|
investigating_by_ai: "investigating_by_ai";
|
|
3923
3904
|
in_progress: "in_progress";
|
|
3924
3905
|
blocked: "blocked";
|
|
@@ -3951,8 +3932,6 @@ declare const zUpdateFeatureRequestRequest: z.ZodObject<{
|
|
|
3951
3932
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3952
3933
|
open: "open";
|
|
3953
3934
|
pending_approval: "pending_approval";
|
|
3954
|
-
triage: "triage";
|
|
3955
|
-
triaged: "triaged";
|
|
3956
3935
|
investigating_by_ai: "investigating_by_ai";
|
|
3957
3936
|
in_progress: "in_progress";
|
|
3958
3937
|
blocked: "blocked";
|
|
@@ -3982,8 +3961,6 @@ declare const zUpdateOpsItemStatusRequest: z.ZodObject<{
|
|
|
3982
3961
|
status: z.ZodOptional<z.ZodEnum<{
|
|
3983
3962
|
open: "open";
|
|
3984
3963
|
pending_approval: "pending_approval";
|
|
3985
|
-
triage: "triage";
|
|
3986
|
-
triaged: "triaged";
|
|
3987
3964
|
investigating_by_ai: "investigating_by_ai";
|
|
3988
3965
|
in_progress: "in_progress";
|
|
3989
3966
|
blocked: "blocked";
|
|
@@ -4016,8 +3993,6 @@ declare const zUpdateOpsItemRequest: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
4016
3993
|
status: z.ZodOptional<z.ZodEnum<{
|
|
4017
3994
|
open: "open";
|
|
4018
3995
|
pending_approval: "pending_approval";
|
|
4019
|
-
triage: "triage";
|
|
4020
|
-
triaged: "triaged";
|
|
4021
3996
|
investigating_by_ai: "investigating_by_ai";
|
|
4022
3997
|
in_progress: "in_progress";
|
|
4023
3998
|
blocked: "blocked";
|
|
@@ -4046,8 +4021,6 @@ declare const zUpdateOpsItemRequest: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
4046
4021
|
status: z.ZodOptional<z.ZodEnum<{
|
|
4047
4022
|
open: "open";
|
|
4048
4023
|
pending_approval: "pending_approval";
|
|
4049
|
-
triage: "triage";
|
|
4050
|
-
triaged: "triaged";
|
|
4051
4024
|
investigating_by_ai: "investigating_by_ai";
|
|
4052
4025
|
in_progress: "in_progress";
|
|
4053
4026
|
blocked: "blocked";
|
|
@@ -4073,8 +4046,6 @@ declare const zUpdateOpsItemRequest: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
4073
4046
|
status: z.ZodOptional<z.ZodEnum<{
|
|
4074
4047
|
open: "open";
|
|
4075
4048
|
pending_approval: "pending_approval";
|
|
4076
|
-
triage: "triage";
|
|
4077
|
-
triaged: "triaged";
|
|
4078
4049
|
investigating_by_ai: "investigating_by_ai";
|
|
4079
4050
|
in_progress: "in_progress";
|
|
4080
4051
|
blocked: "blocked";
|
|
@@ -8535,8 +8506,6 @@ declare const zListOpsItemsQuery: z.ZodObject<{
|
|
|
8535
8506
|
status: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
8536
8507
|
open: "open";
|
|
8537
8508
|
pending_approval: "pending_approval";
|
|
8538
|
-
triage: "triage";
|
|
8539
|
-
triaged: "triaged";
|
|
8540
8509
|
investigating_by_ai: "investigating_by_ai";
|
|
8541
8510
|
in_progress: "in_progress";
|
|
8542
8511
|
blocked: "blocked";
|
|
@@ -8564,8 +8533,6 @@ declare const zListOpsItemsResponse2: z.ZodArray<z.ZodObject<{
|
|
|
8564
8533
|
status: z.ZodEnum<{
|
|
8565
8534
|
open: "open";
|
|
8566
8535
|
pending_approval: "pending_approval";
|
|
8567
|
-
triage: "triage";
|
|
8568
|
-
triaged: "triaged";
|
|
8569
8536
|
investigating_by_ai: "investigating_by_ai";
|
|
8570
8537
|
in_progress: "in_progress";
|
|
8571
8538
|
blocked: "blocked";
|
|
@@ -8584,12 +8551,11 @@ declare const zListOpsItemsResponse2: z.ZodArray<z.ZodObject<{
|
|
|
8584
8551
|
pending_approval: "pending_approval";
|
|
8585
8552
|
ready_for_qa: "ready_for_qa";
|
|
8586
8553
|
pr_ready: "pr_ready";
|
|
8554
|
+
pr_merged: "pr_merged";
|
|
8587
8555
|
investigated: "investigated";
|
|
8588
8556
|
detected: "detected";
|
|
8589
8557
|
question: "question";
|
|
8590
|
-
needs_triage: "needs_triage";
|
|
8591
8558
|
working: "working";
|
|
8592
|
-
triaged_low: "triaged_low";
|
|
8593
8559
|
backlog: "backlog";
|
|
8594
8560
|
}>>>;
|
|
8595
8561
|
source: z.ZodEnum<{
|
|
@@ -8815,8 +8781,6 @@ declare const zCreateOpsItemBody: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
8815
8781
|
status: z.ZodOptional<z.ZodEnum<{
|
|
8816
8782
|
open: "open";
|
|
8817
8783
|
pending_approval: "pending_approval";
|
|
8818
|
-
triage: "triage";
|
|
8819
|
-
triaged: "triaged";
|
|
8820
8784
|
investigating_by_ai: "investigating_by_ai";
|
|
8821
8785
|
in_progress: "in_progress";
|
|
8822
8786
|
blocked: "blocked";
|
|
@@ -8853,8 +8817,6 @@ declare const zCreateOpsItemBody: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
8853
8817
|
status: z.ZodOptional<z.ZodEnum<{
|
|
8854
8818
|
open: "open";
|
|
8855
8819
|
pending_approval: "pending_approval";
|
|
8856
|
-
triage: "triage";
|
|
8857
|
-
triaged: "triaged";
|
|
8858
8820
|
investigating_by_ai: "investigating_by_ai";
|
|
8859
8821
|
in_progress: "in_progress";
|
|
8860
8822
|
blocked: "blocked";
|
|
@@ -8923,8 +8885,6 @@ declare const zGetOpsItemResponse2: z.ZodObject<{
|
|
|
8923
8885
|
status: z.ZodEnum<{
|
|
8924
8886
|
open: "open";
|
|
8925
8887
|
pending_approval: "pending_approval";
|
|
8926
|
-
triage: "triage";
|
|
8927
|
-
triaged: "triaged";
|
|
8928
8888
|
investigating_by_ai: "investigating_by_ai";
|
|
8929
8889
|
in_progress: "in_progress";
|
|
8930
8890
|
blocked: "blocked";
|
|
@@ -8947,12 +8907,11 @@ declare const zGetOpsItemResponse2: z.ZodObject<{
|
|
|
8947
8907
|
pending_approval: "pending_approval";
|
|
8948
8908
|
ready_for_qa: "ready_for_qa";
|
|
8949
8909
|
pr_ready: "pr_ready";
|
|
8910
|
+
pr_merged: "pr_merged";
|
|
8950
8911
|
investigated: "investigated";
|
|
8951
8912
|
detected: "detected";
|
|
8952
8913
|
question: "question";
|
|
8953
|
-
needs_triage: "needs_triage";
|
|
8954
8914
|
working: "working";
|
|
8955
|
-
triaged_low: "triaged_low";
|
|
8956
8915
|
backlog: "backlog";
|
|
8957
8916
|
}>>>;
|
|
8958
8917
|
reporterEmail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
@@ -9148,8 +9107,6 @@ declare const zUpdateOpsItemBody: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
9148
9107
|
status: z.ZodOptional<z.ZodEnum<{
|
|
9149
9108
|
open: "open";
|
|
9150
9109
|
pending_approval: "pending_approval";
|
|
9151
|
-
triage: "triage";
|
|
9152
|
-
triaged: "triaged";
|
|
9153
9110
|
investigating_by_ai: "investigating_by_ai";
|
|
9154
9111
|
in_progress: "in_progress";
|
|
9155
9112
|
blocked: "blocked";
|
|
@@ -9178,8 +9135,6 @@ declare const zUpdateOpsItemBody: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
9178
9135
|
status: z.ZodOptional<z.ZodEnum<{
|
|
9179
9136
|
open: "open";
|
|
9180
9137
|
pending_approval: "pending_approval";
|
|
9181
|
-
triage: "triage";
|
|
9182
|
-
triaged: "triaged";
|
|
9183
9138
|
investigating_by_ai: "investigating_by_ai";
|
|
9184
9139
|
in_progress: "in_progress";
|
|
9185
9140
|
blocked: "blocked";
|
|
@@ -9205,8 +9160,6 @@ declare const zUpdateOpsItemBody: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
9205
9160
|
status: z.ZodOptional<z.ZodEnum<{
|
|
9206
9161
|
open: "open";
|
|
9207
9162
|
pending_approval: "pending_approval";
|
|
9208
|
-
triage: "triage";
|
|
9209
|
-
triaged: "triaged";
|
|
9210
9163
|
investigating_by_ai: "investigating_by_ai";
|
|
9211
9164
|
in_progress: "in_progress";
|
|
9212
9165
|
blocked: "blocked";
|
package/dist/schemas.js
CHANGED
package/openapi.json
CHANGED
|
@@ -6939,7 +6939,7 @@
|
|
|
6939
6939
|
"name": "status",
|
|
6940
6940
|
"in": "query",
|
|
6941
6941
|
"required": false,
|
|
6942
|
-
"description": "Filter by lifecycle status, or `all`. The human-gated holding
|
|
6942
|
+
"description": "Filter by lifecycle status, or `all`. The human-gated holding state (`pending_approval`) is excluded from `all`/default and returned only when requested as the exact status.",
|
|
6943
6943
|
"schema": {
|
|
6944
6944
|
"anyOf": [
|
|
6945
6945
|
{
|
|
@@ -19272,8 +19272,6 @@
|
|
|
19272
19272
|
"enum": [
|
|
19273
19273
|
"open",
|
|
19274
19274
|
"pending_approval",
|
|
19275
|
-
"triage",
|
|
19276
|
-
"triaged",
|
|
19277
19275
|
"investigating_by_ai",
|
|
19278
19276
|
"in_progress",
|
|
19279
19277
|
"blocked",
|
|
@@ -19281,7 +19279,7 @@
|
|
|
19281
19279
|
"resolved",
|
|
19282
19280
|
"wont_fix"
|
|
19283
19281
|
],
|
|
19284
|
-
"description": "Lifecycle status of a queue item. The working flow is `open` → `
|
|
19282
|
+
"description": "Lifecycle status of a queue item. The working flow is `open` → `in_progress` → `ready_for_qa` → `resolved` (or `wont_fix`, terminal from any earlier stage). `blocked` marks an item that can't progress until an external dependency clears — a working state a human sets and clears. `ready_for_qa` is what a developer sets once a fix lands; `resolved` is the QA sign-off, normally flipped in the dashboard after verification — set it directly from code only when the fix has been verified end-to-end. `investigating_by_ai` is a system-owned display state — set when the AI agent (Jarvis) picks an item up to investigate, never chosen by a human — so it is shown but not offered as a manual choice. `pending_approval` is the one human-gated holding state: it parks an item OUT of the work queue until a human promotes it to `open` in the dashboard, so `GET /api/admin/ops` excludes it under `status=all`/default and returns it only when requested as an exact `status`. It covers untriaged inbound that must never be auto-implemented — connector requests filed from a customer's connectors panel, and questions funnelled in from the \"Stuck in onboarding?\" assistant — where approving means flipping the status to `open`. Two earlier values were removed in favour of this single gate: `triage` (the onboarding-help bucket, now `pending_approval`) and `triaged` (a redundant \"looked at but not started\" step, now plain `open`)."
|
|
19285
19283
|
},
|
|
19286
19284
|
"OpsItemPriority": {
|
|
19287
19285
|
"type": "string",
|
|
@@ -19297,17 +19295,16 @@
|
|
|
19297
19295
|
"type": "string",
|
|
19298
19296
|
"enum": [
|
|
19299
19297
|
"pr_ready",
|
|
19298
|
+
"pr_merged",
|
|
19300
19299
|
"investigated",
|
|
19301
19300
|
"detected",
|
|
19302
19301
|
"question",
|
|
19303
19302
|
"ready_for_qa",
|
|
19304
19303
|
"pending_approval",
|
|
19305
|
-
"needs_triage",
|
|
19306
19304
|
"working",
|
|
19307
|
-
"triaged_low",
|
|
19308
19305
|
"backlog"
|
|
19309
19306
|
],
|
|
19310
|
-
"description": "Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as \"what AI did\" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `
|
|
19307
|
+
"description": "Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as \"what AI did\" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `backlog` or `investigated`/`detected` for auto-filed error/alert tickets. `backlog` is the single \"nothing has happened yet\" state — how urgent that is reads off `priority`, not off a separate state, and its one action is to hand the item to an agent. `pr_merged` is derived client-side by scanning the linked pull request on GitHub, so it is accepted on write but not currently emitted by the API. Absent on rows filed before the field existed — consumers should treat a missing value as \"derive from the other fields\"."
|
|
19311
19308
|
},
|
|
19312
19309
|
"OpsBrowserContext": {
|
|
19313
19310
|
"type": "object",
|
package/openapi.yaml
CHANGED
|
@@ -5078,7 +5078,7 @@ paths:
|
|
|
5078
5078
|
- name: status
|
|
5079
5079
|
in: query
|
|
5080
5080
|
required: false
|
|
5081
|
-
description: Filter by lifecycle status, or `all`. The human-gated holding
|
|
5081
|
+
description: Filter by lifecycle status, or `all`. The human-gated holding state (`pending_approval`) is excluded from `all`/default and returned only when requested as the exact status.
|
|
5082
5082
|
schema:
|
|
5083
5083
|
anyOf:
|
|
5084
5084
|
- $ref: '#/components/schemas/OpsItemStatus'
|
|
@@ -13925,15 +13925,13 @@ components:
|
|
|
13925
13925
|
enum:
|
|
13926
13926
|
- open
|
|
13927
13927
|
- pending_approval
|
|
13928
|
-
- triage
|
|
13929
|
-
- triaged
|
|
13930
13928
|
- investigating_by_ai
|
|
13931
13929
|
- in_progress
|
|
13932
13930
|
- blocked
|
|
13933
13931
|
- ready_for_qa
|
|
13934
13932
|
- resolved
|
|
13935
13933
|
- wont_fix
|
|
13936
|
-
description: 'Lifecycle status of a queue item. The working flow is `open` → `
|
|
13934
|
+
description: 'Lifecycle status of a queue item. The working flow is `open` → `in_progress` → `ready_for_qa` → `resolved` (or `wont_fix`, terminal from any earlier stage). `blocked` marks an item that can''t progress until an external dependency clears — a working state a human sets and clears. `ready_for_qa` is what a developer sets once a fix lands; `resolved` is the QA sign-off, normally flipped in the dashboard after verification — set it directly from code only when the fix has been verified end-to-end. `investigating_by_ai` is a system-owned display state — set when the AI agent (Jarvis) picks an item up to investigate, never chosen by a human — so it is shown but not offered as a manual choice. `pending_approval` is the one human-gated holding state: it parks an item OUT of the work queue until a human promotes it to `open` in the dashboard, so `GET /api/admin/ops` excludes it under `status=all`/default and returns it only when requested as an exact `status`. It covers untriaged inbound that must never be auto-implemented — connector requests filed from a customer''s connectors panel, and questions funnelled in from the "Stuck in onboarding?" assistant — where approving means flipping the status to `open`. Two earlier values were removed in favour of this single gate: `triage` (the onboarding-help bucket, now `pending_approval`) and `triaged` (a redundant "looked at but not started" step, now plain `open`).'
|
|
13937
13935
|
OpsItemPriority:
|
|
13938
13936
|
type: string
|
|
13939
13937
|
enum:
|
|
@@ -13946,16 +13944,15 @@ components:
|
|
|
13946
13944
|
type: string
|
|
13947
13945
|
enum:
|
|
13948
13946
|
- pr_ready
|
|
13947
|
+
- pr_merged
|
|
13949
13948
|
- investigated
|
|
13950
13949
|
- detected
|
|
13951
13950
|
- question
|
|
13952
13951
|
- ready_for_qa
|
|
13953
13952
|
- pending_approval
|
|
13954
|
-
- needs_triage
|
|
13955
13953
|
- working
|
|
13956
|
-
- triaged_low
|
|
13957
13954
|
- backlog
|
|
13958
|
-
description: 'Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as "what AI did" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `
|
|
13955
|
+
description: 'Where automation has taken an item in the investigation lifecycle — the signal the ops cockpit renders as "what AI did" plus the one action expected of the user. It is **written as a side-effect of the actions that already happen**, never authored on its own: linking a PR sets `pr_ready`, moving to `in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a system/assistant reply sets `question`, resolving clears it, and creation seeds `backlog` or `investigated`/`detected` for auto-filed error/alert tickets. `backlog` is the single "nothing has happened yet" state — how urgent that is reads off `priority`, not off a separate state, and its one action is to hand the item to an agent. `pr_merged` is derived client-side by scanning the linked pull request on GitHub, so it is accepted on write but not currently emitted by the API. Absent on rows filed before the field existed — consumers should treat a missing value as "derive from the other fields".'
|
|
13959
13956
|
OpsBrowserContext:
|
|
13960
13957
|
type: object
|
|
13961
13958
|
properties:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shipeasy/openapi",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Shipeasy admin OpenAPI 3.2 spec (hand-authored, single source of truth) + the generated TypeScript client, Zod schemas, and types. Consumed by @shipeasy/cli and @shipeasy/mcp.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -1093,8 +1093,6 @@ OpsItemStatus:
|
|
|
1093
1093
|
enum:
|
|
1094
1094
|
- open
|
|
1095
1095
|
- pending_approval
|
|
1096
|
-
- triage
|
|
1097
|
-
- triaged
|
|
1098
1096
|
- investigating_by_ai
|
|
1099
1097
|
- in_progress
|
|
1100
1098
|
- blocked
|
|
@@ -1102,7 +1100,7 @@ OpsItemStatus:
|
|
|
1102
1100
|
- resolved
|
|
1103
1101
|
- wont_fix
|
|
1104
1102
|
description: >-
|
|
1105
|
-
Lifecycle status of a queue item. The working flow is `open` →
|
|
1103
|
+
Lifecycle status of a queue item. The working flow is `open` →
|
|
1106
1104
|
`in_progress` → `ready_for_qa` → `resolved` (or `wont_fix`, terminal from
|
|
1107
1105
|
any earlier stage). `blocked` marks an item that can't progress until an
|
|
1108
1106
|
external dependency clears — a working state a human sets and clears.
|
|
@@ -1111,18 +1109,17 @@ OpsItemStatus:
|
|
|
1111
1109
|
after verification — set it directly from code only when the fix has been
|
|
1112
1110
|
verified end-to-end. `investigating_by_ai` is a system-owned display state —
|
|
1113
1111
|
set when the AI agent (Jarvis) picks an item up to investigate, never chosen
|
|
1114
|
-
by a human — so it is shown but not offered as a manual choice.
|
|
1115
|
-
human-gated holding
|
|
1116
|
-
promotes it to `open` in the dashboard,
|
|
1117
|
-
|
|
1118
|
-
exact `status
|
|
1119
|
-
|
|
1120
|
-
connectors panel
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
work queue until a human moves real items to `open`.
|
|
1112
|
+
by a human — so it is shown but not offered as a manual choice.
|
|
1113
|
+
`pending_approval` is the one human-gated holding state: it parks an item
|
|
1114
|
+
OUT of the work queue until a human promotes it to `open` in the dashboard,
|
|
1115
|
+
so `GET /api/admin/ops` excludes it under `status=all`/default and returns
|
|
1116
|
+
it only when requested as an exact `status`. It covers untriaged inbound
|
|
1117
|
+
that must never be auto-implemented — connector requests filed from a
|
|
1118
|
+
customer's connectors panel, and questions funnelled in from the "Stuck in
|
|
1119
|
+
onboarding?" assistant — where approving means flipping the status to
|
|
1120
|
+
`open`. Two earlier values were removed in favour of this single gate:
|
|
1121
|
+
`triage` (the onboarding-help bucket, now `pending_approval`) and `triaged`
|
|
1122
|
+
(a redundant "looked at but not started" step, now plain `open`).
|
|
1126
1123
|
OpsItemPriority:
|
|
1127
1124
|
type: string
|
|
1128
1125
|
enum:
|
|
@@ -1138,14 +1135,13 @@ OpsInvestigationState:
|
|
|
1138
1135
|
type: string
|
|
1139
1136
|
enum:
|
|
1140
1137
|
- pr_ready
|
|
1138
|
+
- pr_merged
|
|
1141
1139
|
- investigated
|
|
1142
1140
|
- detected
|
|
1143
1141
|
- question
|
|
1144
1142
|
- ready_for_qa
|
|
1145
1143
|
- pending_approval
|
|
1146
|
-
- needs_triage
|
|
1147
1144
|
- working
|
|
1148
|
-
- triaged_low
|
|
1149
1145
|
- backlog
|
|
1150
1146
|
description: >-
|
|
1151
1147
|
Where automation has taken an item in the investigation lifecycle — the
|
|
@@ -1154,11 +1150,14 @@ OpsInvestigationState:
|
|
|
1154
1150
|
happen**, never authored on its own: linking a PR sets `pr_ready`, moving to
|
|
1155
1151
|
`in_progress` sets `working`, `ready_for_qa` sets `ready_for_qa`, a
|
|
1156
1152
|
system/assistant reply sets `question`, resolving clears it, and creation
|
|
1157
|
-
seeds `
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1153
|
+
seeds `backlog` or `investigated`/`detected` for auto-filed error/alert
|
|
1154
|
+
tickets. `backlog` is the single "nothing has happened yet" state — how
|
|
1155
|
+
urgent that is reads off `priority`, not off a separate state, and its one
|
|
1156
|
+
action is to hand the item to an agent. `pr_merged` is derived client-side
|
|
1157
|
+
by scanning the linked pull request on GitHub, so it is accepted on write
|
|
1158
|
+
but not currently emitted by the API. Absent on rows filed before the field
|
|
1159
|
+
existed — consumers should treat a missing value as "derive from the other
|
|
1160
|
+
fields".
|
|
1162
1161
|
OpsItemPriorityOrNull:
|
|
1163
1162
|
anyOf:
|
|
1164
1163
|
- $ref: "#/OpsItemPriority"
|
package/spec/paths/ops.yaml
CHANGED
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
in: query
|
|
30
30
|
required: false
|
|
31
31
|
description: >-
|
|
32
|
-
Filter by lifecycle status, or `all`. The human-gated holding
|
|
33
|
-
(`pending_approval
|
|
34
|
-
|
|
32
|
+
Filter by lifecycle status, or `all`. The human-gated holding state
|
|
33
|
+
(`pending_approval`) is excluded from `all`/default and returned only
|
|
34
|
+
when requested as the exact status.
|
|
35
35
|
schema:
|
|
36
36
|
anyOf:
|
|
37
37
|
- $ref: ../components/schemas/ops.yaml#/OpsItemStatus
|