refactor(commands): unify repeated ACP and routing flows

This commit is contained in:
Peter Steinberger
2026-03-02 05:19:47 +00:00
parent 2d31126e6a
commit 6b78544f82
12 changed files with 333 additions and 442 deletions

View File

@@ -171,6 +171,17 @@ export function createLaneTextDeliverer(params: CreateLaneTextDelivererParams) {
previewMessageId: previewMessageIdOverride,
previewTextSnapshot,
}: TryUpdatePreviewParams): Promise<boolean> => {
const editPreview = (messageId: number, treatEditFailureAsDelivered: boolean) =>
tryEditPreviewMessage({
laneName,
messageId,
text,
context,
previewButtons,
updateLaneSnapshot,
lane,
treatEditFailureAsDelivered,
});
if (!lane.stream) {
return false;
}
@@ -198,16 +209,7 @@ export function createLaneTextDeliverer(params: CreateLaneTextDelivererParams) {
params.markDelivered();
return true;
}
return tryEditPreviewMessage({
laneName,
messageId: previewMessageId,
text,
context,
previewButtons,
updateLaneSnapshot,
lane,
treatEditFailureAsDelivered: true,
});
return editPreview(previewMessageId, true);
}
if (stopBeforeEdit) {
await params.stopDraftLane(lane);
@@ -230,16 +232,7 @@ export function createLaneTextDeliverer(params: CreateLaneTextDelivererParams) {
params.markDelivered();
return true;
}
return tryEditPreviewMessage({
laneName,
messageId: previewMessageId,
text,
context,
previewButtons,
updateLaneSnapshot,
lane,
treatEditFailureAsDelivered: false,
});
return editPreview(previewMessageId, false);
};
const consumeArchivedAnswerPreviewForFinal = async ({