fix(rectification): stop yearless ungrounded varga contrast from minting cards
Independent Staging Quality Gate / validate (push) Successful in 9m10s
Independent Staging Quality Gate / publish (push) Successful in 8m43s

Only sign-bound varga_style questions may omit a concrete period. Remaining-layer existence and quality probes now drop as yearless_ungrounded_contrast instead of scoring by group order.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-08-30 10:55:11 +08:00
co-authored by Cursor
parent 95f5851261
commit b43808b016
18 changed files with 741 additions and 138 deletions
@@ -2000,7 +2000,7 @@ test("yearless family contrast yields to a dated career discriminator", () => {
assert.doesNotMatch(plan.next_followup?.choice_frame?.prompt ?? "", /那段时间/);
});
test("yearless family contrast without a dated discriminator asks the D12 distinguish card", () => {
test("yearless family contrast without a dated discriminator asks dated family collect", () => {
const plan = buildMethodFollowupPlan({
evidence: [
...CLASSIC_COVERAGE.filter((item) => item.domain !== "horary" && item.domain !== "family"),
@@ -2012,12 +2012,29 @@ test("yearless family contrast without a dated discriminator asks the D12 distin
probes: [YEARLESS_D12],
},
candidatesSeparated: false,
evidenceCollectionProbes: [{
year: 2021,
year_label: "2021 年前后",
domain: "family",
event_family: "家人结婚、添丁或住院",
source: "age_band",
tracks: ["vimshottari", "narayana"],
tracks_agree: false,
unique_minute_claim: false,
user_meaning: "时间范围锁定 2021 年前后;领域锁定 family。",
role: "collect",
phase: "evidence_collection",
information_gain: 0,
semantic_key: "family.2021",
}],
});
assert.equal(plan.next_followup?.intent, "distinguish_candidates");
assert.equal(plan.next_followup?.intent, "collect_method_evidence");
assert.equal(plan.next_followup?.domain, "family");
assert.match(plan.next_followup?.semantic_key ?? "", /^varga\.d12/);
assert.ok(plan.next_followup?.choice_frame);
assert.notEqual(plan.next_followup?.source, "method_coverage");
assert.equal(plan.next_followup?.choice_frame, null);
assert.equal(plan.next_followup?.probe_year, 2021);
assert.equal(plan.dropped_probes.some((item) => (
item.semantic_key.startsWith("varga.d12") && item.reason === "yearless_ungrounded_contrast"
)), true);
});
test("family collect attaches the collection-probe year instead of a yearless D24 card", () => {
@@ -2076,7 +2093,7 @@ test("family collect attaches the collection-probe year instead of a yearless D2
assert.match(spokenFollowupForUser(plan.next_followup) ?? "", /2021 年前后,家里有没有/);
});
test("already-open yearless family card keeps the D12 scoring frame", () => {
test("already-open yearless family card is abandoned instead of kept as a scoring frame", () => {
const plan = buildMethodFollowupPlan({
evidence: [
...CLASSIC_COVERAGE.filter((item) => item.domain !== "horary" && item.domain !== "family"),
@@ -2088,6 +2105,21 @@ test("already-open yearless family card keeps the D12 scoring frame", () => {
probes: [YEARLESS_D12],
},
candidatesSeparated: false,
evidenceCollectionProbes: [{
year: 2021,
year_label: "2021 年前后",
domain: "family",
event_family: "家人结婚、添丁或住院",
source: "age_band",
tracks: ["vimshottari", "narayana"],
tracks_agree: false,
unique_minute_claim: false,
user_meaning: "时间范围锁定 2021 年前后;领域锁定 family。",
role: "collect",
phase: "evidence_collection",
information_gain: 0,
semantic_key: "family.2021",
}],
activeFocus: {
intent: "distinguish_candidates",
targetDomain: "family",
@@ -2109,9 +2141,10 @@ test("already-open yearless family card keeps the D12 scoring frame", () => {
},
},
});
assert.equal(plan.next_followup?.intent, "distinguish_candidates");
assert.ok(plan.next_followup?.choice_frame);
assert.match(plan.next_followup?.semantic_key ?? "", /varga\.d12/);
assert.equal(plan.next_followup?.intent, "collect_method_evidence");
assert.equal(plan.next_followup?.domain, "family");
assert.equal(plan.next_followup?.choice_frame, null);
assert.equal(plan.next_followup?.probe_year, 2021);
});
test("already-open dated career card stays ahead of a yearless D24 catalog row", () => {