Bind ticket completion to current review evidence
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
// @generated by yoi-companion-openapi-typescript@1. Do not edit.
|
||||
// Input: openapi/server-api.json
|
||||
// Input contract: 0.1.0 (sha256:fbaf40391d4ab81b9ffb558ff4c055efb8c58e26b6a88d3eefbbbeefc6ea0822)
|
||||
// Input contract: 0.1.0 (sha256:7b14311c0ae7d40c3e1b423890c890b1b73de321ed199c223b771711effcd280)
|
||||
// Options: companion-operation-schema-closure,openapi-3.1,strict-integer-ranges,sorted-output
|
||||
// Output: web/workspace/src/lib/generated/companion-api.ts
|
||||
// Regenerate/check: cargo run -q -p server-api --example generate_companion_api_types -- --check
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// @generated by yoi-repository-openapi-typescript@1. Do not edit.
|
||||
// Input: openapi/server-api.json
|
||||
// Input contract: 0.1.0 (sha256:fbaf40391d4ab81b9ffb558ff4c055efb8c58e26b6a88d3eefbbbeefc6ea0822)
|
||||
// Input contract: 0.1.0 (sha256:7b14311c0ae7d40c3e1b423890c890b1b73de321ed199c223b771711effcd280)
|
||||
// Options: repository-operation-schema-closure,openapi-3.1,format:uint64=safe-number,strict-safe-integers,sorted-output
|
||||
// Output: web/workspace/src/lib/generated/repository-api.ts
|
||||
// Regenerate/check: cargo run -q -p server-api --example generate_repository_openapi_types -- --check
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// @generated by yoi-runtime-openapi-typescript@1. Do not edit.
|
||||
// Input: openapi/server-api.json
|
||||
// Input contract: 0.1.0 (sha256:fbaf40391d4ab81b9ffb558ff4c055efb8c58e26b6a88d3eefbbbeefc6ea0822)
|
||||
// Input contract: 0.1.0 (sha256:7b14311c0ae7d40c3e1b423890c890b1b73de321ed199c223b771711effcd280)
|
||||
// Options: runtime-operation-schema-closure,openapi-3.1,strict-integer-ranges,sorted-output
|
||||
// Output: web/workspace/src/lib/generated/runtime-api.ts
|
||||
// Regenerate/check: cargo run -q -p server-api --example generate_runtime_api_types -- --check
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// @generated by yoi-ticket-browser-openapi-typescript@1. Do not edit.
|
||||
// Input: openapi/server-api.json
|
||||
// Input contract: 0.1.0 (sha256:fbaf40391d4ab81b9ffb558ff4c055efb8c58e26b6a88d3eefbbbeefc6ea0822)
|
||||
// Input contract: 0.1.0 (sha256:7b14311c0ae7d40c3e1b423890c890b1b73de321ed199c223b771711effcd280)
|
||||
// Options: ticket-objective-merge-request-browser-operation-schema-closure,openapi-3.1,strict-integer-ranges,sorted-output
|
||||
// Output: web/workspace/src/lib/generated/ticket-api.ts
|
||||
// Regenerate/check: cargo run -q -p server-api --example generate_ticket_api_types -- --check
|
||||
@@ -47,9 +47,11 @@ export type MergeRequestRefDiagnostic = { code: string; message: string; };
|
||||
|
||||
export type MergeRequestRefResponse = { diagnostic?: MergeRequestRefDiagnostic | null; observed_at: string; ref?: string | null; status: string; };
|
||||
|
||||
export type MergeRequestReviewSubject = { merge_request_id: string; subject_ref: string; };
|
||||
|
||||
export type MergeRequestState = "open" | "merged" | "closed";
|
||||
|
||||
export type MergeRequestThreadEvent = { created_at: string; event_id: string; kind: "review_requested"; requested_by: MergeRequestWorkerIdentity; reviewer: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; ticket_item_revision: string; } | { body: string; created_at: string; decision: ReviewDecision; event_id: string; findings: Array<ReviewFinding>; kind: "review"; request_event_id: string; reviewer: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; ticket_item_revision: string; } | { created_at: string; event_id: string; kind: "review_revoked"; reason: string; review_event_id: string; revoked_by: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; } | { created_at: string; event_id: string; kind: "review_cancelled"; reason: string; request_event_id: string; sequence: number; subject_ref: string; } | { author: MergeRequestWorkerIdentity; body: string; created_at: string; event_id: string; kind: "comment"; sequence: number; } | { approval_event_id: string; approved_source_ref: string; created_at: string; event_id: string; kind: "merge"; merged_by: MergeRequestWorkerIdentity; operation_id: string; resolution: ConflictResolution; sequence: number; strategy: MergeStrategy; target_ref_after: string; target_ref_before: string; };
|
||||
export type MergeRequestThreadEvent = { created_at: string; event_id: string; kind: "review_requested"; requested_by: MergeRequestWorkerIdentity; reviewer: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; ticket_item_revision: string; ticket_merge_request_subjects: Array<MergeRequestReviewSubject>; } | { body: string; created_at: string; decision: ReviewDecision; event_id: string; findings: Array<ReviewFinding>; kind: "review"; request_event_id: string; reviewer: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; ticket_item_revision: string; ticket_merge_request_subjects: Array<MergeRequestReviewSubject>; } | { created_at: string; event_id: string; kind: "review_revoked"; reason: string; review_event_id: string; revoked_by: MergeRequestWorkerIdentity; sequence: number; subject_ref: string; } | { created_at: string; event_id: string; kind: "review_cancelled"; reason: string; request_event_id: string; sequence: number; subject_ref: string; } | { author: MergeRequestWorkerIdentity; body: string; created_at: string; event_id: string; kind: "comment"; sequence: number; } | { approval_event_id: string; approved_source_ref: string; created_at: string; event_id: string; kind: "merge"; merged_by: MergeRequestWorkerIdentity; operation_id: string; resolution: ConflictResolution; sequence: number; strategy: MergeStrategy; target_ref_after: string; target_ref_before: string; };
|
||||
|
||||
export type MergeRequestWorkerIdentity = { runtime_id: string; worker_id: string; };
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// @generated by yoi-worker-openapi-typescript@1. Do not edit.
|
||||
// Input: openapi/server-api.json
|
||||
// Input contract: 0.1.0 (sha256:fbaf40391d4ab81b9ffb558ff4c055efb8c58e26b6a88d3eefbbbeefc6ea0822)
|
||||
// Input contract: 0.1.0 (sha256:7b14311c0ae7d40c3e1b423890c890b1b73de321ed199c223b771711effcd280)
|
||||
// Options: worker-operation-schema-closure,openapi-3.1,strict-integer-ranges,sorted-output
|
||||
// Output: web/workspace/src/lib/generated/worker-launch-api.ts
|
||||
// Regenerate/check: cargo run -q -p server-api --example generate_worker_launch_api_types -- --check
|
||||
|
||||
@@ -6,6 +6,7 @@ import type {
|
||||
MergeRequestListResponse,
|
||||
MergeRequestRefDiagnostic,
|
||||
MergeRequestRefResponse,
|
||||
MergeRequestReviewSubject,
|
||||
MergeRequestThreadEvent,
|
||||
MergeRequestWorkerIdentity,
|
||||
ObjectiveDetail,
|
||||
@@ -1055,6 +1056,21 @@ function parseMergeRequestWorker(
|
||||
};
|
||||
}
|
||||
|
||||
function parseMergeRequestReviewSubject(
|
||||
value: unknown,
|
||||
label: string,
|
||||
): MergeRequestReviewSubject {
|
||||
const item = object(value, label);
|
||||
exact(item, ["merge_request_id", "subject_ref"], label);
|
||||
return {
|
||||
merge_request_id: string(
|
||||
item.merge_request_id,
|
||||
`${label}.merge_request_id`,
|
||||
),
|
||||
subject_ref: string(item.subject_ref, `${label}.subject_ref`),
|
||||
};
|
||||
}
|
||||
|
||||
function parseReviewFinding(value: unknown, label: string): ReviewFinding {
|
||||
const item = object(value, label);
|
||||
exact(item, ["body", "code", "line", "path", "severity"], label);
|
||||
@@ -1096,6 +1112,7 @@ function parseMergeRequestThreadEvent(
|
||||
"reviewer",
|
||||
"subject_ref",
|
||||
"ticket_item_revision",
|
||||
"ticket_merge_request_subjects",
|
||||
],
|
||||
label,
|
||||
);
|
||||
@@ -1112,6 +1129,11 @@ function parseMergeRequestThreadEvent(
|
||||
item.ticket_item_revision,
|
||||
`${label}.ticket_item_revision`,
|
||||
),
|
||||
ticket_merge_request_subjects: array(
|
||||
item.ticket_merge_request_subjects,
|
||||
`${label}.ticket_merge_request_subjects`,
|
||||
parseMergeRequestReviewSubject,
|
||||
),
|
||||
};
|
||||
}
|
||||
if (kind === "review") {
|
||||
@@ -1124,6 +1146,7 @@ function parseMergeRequestThreadEvent(
|
||||
"reviewer",
|
||||
"subject_ref",
|
||||
"ticket_item_revision",
|
||||
"ticket_merge_request_subjects",
|
||||
], label);
|
||||
const decision = string(item.decision, `${label}.decision`);
|
||||
if (!["approve", "request_changes"].includes(decision)) {
|
||||
@@ -1145,6 +1168,11 @@ function parseMergeRequestThreadEvent(
|
||||
item.ticket_item_revision,
|
||||
`${label}.ticket_item_revision`,
|
||||
),
|
||||
ticket_merge_request_subjects: array(
|
||||
item.ticket_merge_request_subjects,
|
||||
`${label}.ticket_merge_request_subjects`,
|
||||
parseMergeRequestReviewSubject,
|
||||
),
|
||||
};
|
||||
}
|
||||
if (kind === "review_revoked") {
|
||||
|
||||
Reference in New Issue
Block a user