fix(rectification): hold time cards until an offer turn
Keep collecting while a method follow-up can still distinguish candidates, and show adoption cards only after offer-candidates. Align the natal house snapshot with the agent text column. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -138,6 +138,16 @@ function action(
|
||||
return { id, user_meaning };
|
||||
}
|
||||
|
||||
export function conversationalSessionOutcome(input: {
|
||||
selectionAllowed: boolean;
|
||||
confirmationAllowed: boolean;
|
||||
nextFollowup: MethodFollowup | null;
|
||||
}): SessionOutcomeKind {
|
||||
if (input.confirmationAllowed) return "awaiting_confirmation";
|
||||
if (input.selectionAllowed && !input.nextFollowup) return "adopt_representative";
|
||||
return "collect_evidence";
|
||||
}
|
||||
|
||||
export function buildNextUserAction(input: {
|
||||
scorableCount: number;
|
||||
evidenceCount: number;
|
||||
@@ -154,10 +164,12 @@ export function buildNextUserAction(input: {
|
||||
"adopt_representative",
|
||||
"本轮已有代表性候选时间。说明还不能确认唯一分钟,请用户采用下方时间卡片;采用后才用该时间看盘。不要只说记下了以后再说。",
|
||||
);
|
||||
if (input.sessionOutcome === "awaiting_confirmation") {
|
||||
return { id: adopt.id, user_meaning: adopt.user_meaning, on_user_stop: adopt };
|
||||
}
|
||||
if (
|
||||
input.sessionOutcome === "adopt_representative"
|
||||
|| input.sessionOutcome === "awaiting_confirmation"
|
||||
|| input.selectionAllowed
|
||||
|| (input.selectionAllowed && !input.nextFollowup)
|
||||
) {
|
||||
return { id: adopt.id, user_meaning: adopt.user_meaning, on_user_stop: adopt };
|
||||
}
|
||||
@@ -183,7 +195,7 @@ export function buildNextUserAction(input: {
|
||||
return {
|
||||
id: "ask_method_followup",
|
||||
user_meaning: input.nextFollowup.user_prompt_hint,
|
||||
on_user_stop: explain,
|
||||
on_user_stop: input.selectionAllowed ? adopt : explain,
|
||||
};
|
||||
}
|
||||
return { id: explain.id, user_meaning: explain.user_meaning, on_user_stop: explain };
|
||||
|
||||
Reference in New Issue
Block a user