fix: align Ticket review revision checks

This commit is contained in:
2026-09-29 13:22:28 +09:00
parent d8067c9789
commit c18e3ea0d6
2 changed files with 12 additions and 17 deletions
+9 -14
View File
@@ -1655,25 +1655,20 @@ fn current_ticket_revision(
workspace_id: &str,
ticket_id: &str,
) -> Result<Option<String>, MergeRequestError> {
let event_revision = connection
let event_index = connection
.query_row(
"SELECT attribute.value
FROM typed_ticket_events event
JOIN typed_ticket_event_attributes attribute
ON attribute.workspace_id=event.workspace_id
AND attribute.ticket_id=event.ticket_id
AND attribute.event_index=event.event_index
AND attribute.key='event_id'
WHERE event.workspace_id=?1 AND event.ticket_id=?2
AND event.kind IN ('create','item_edit')
ORDER BY event.event_index DESC
"SELECT event_index
FROM typed_ticket_events
WHERE workspace_id=?1 AND ticket_id=?2
AND kind IN ('create','item_edit')
ORDER BY event_index DESC
LIMIT 1",
params![workspace_id, ticket_id],
|row| row.get(0),
|row| row.get::<_, i64>(0),
)
.optional()?;
if event_revision.is_some() {
return Ok(event_revision);
if let Some(event_index) = event_index {
return Ok(Some(format!("{ticket_id}:{event_index}")));
}
connection
.query_row(
+3 -3
View File
@@ -818,7 +818,7 @@ fn ticket_rescope_requires_fresh_review_before_merge_and_remains_recoverable() {
.request_review(RequestMergeRequestReview {
merge_request_id: "MR".into(),
ticket_id: "T".into(),
ticket_item_revision: "t2".into(),
ticket_item_revision: "T:1".into(),
ticket_merge_request_subjects: vec![MergeRequestReviewSubject {
merge_request_id: "MR".into(),
subject_ref: "subject".into(),
@@ -908,7 +908,7 @@ fn ticket_rescope_after_integration_accepts_fresh_requirement_attestation() {
.request_review(RequestMergeRequestReview {
merge_request_id: "MR".into(),
ticket_id: "T".into(),
ticket_item_revision: "t2".into(),
ticket_item_revision: "T:1".into(),
ticket_merge_request_subjects: vec![MergeRequestReviewSubject {
merge_request_id: "MR".into(),
subject_ref: "subject".into(),
@@ -936,7 +936,7 @@ fn ticket_rescope_after_integration_accepts_fresh_requirement_attestation() {
.complete_ticket(CompleteTicket {
ticket_id: "T".into(),
operation_id: "ticket-complete-post-rescope".into(),
item_revision: "t2".into(),
item_revision: "T:1".into(),
merge_request_ids: vec!["MR".into()],
requirement_approval_event_id: requirement_approval.event_id,
auth: auth(),