test(confidence-engine): capture tentative mapping regression
This commit is contained in:
@@ -205,6 +205,21 @@ It must NOT be strengthened into:
|
||||
- exception escalation makes delegation safe
|
||||
- payment success proves readiness for other work`,
|
||||
},
|
||||
{
|
||||
id: "tentative-condition-must-not-map-to-specific-items",
|
||||
centralStatement:
|
||||
"I want to reduce how dependent the business is on me for routine operational work, but I am not sure how much responsibility I can realistically hand over to my team yet. I want to understand what is genuinely preventing more delegation rather than just assuming I need to stay involved.",
|
||||
targetLabel:
|
||||
"Concrete capability gaps, process maturity levels, or approval authority restrictions limiting delegation",
|
||||
targetDescription:
|
||||
"What is actually stopping further delegation right now — not hypothetical constraints but the real bottleneck in the current evidence.",
|
||||
question:
|
||||
"What other routine tasks do you currently handle yourself, and does each one require specific training, a documented process, or a defined approval threshold before it can be assigned to someone else?",
|
||||
answer:
|
||||
"I still handle customer quotations, purchasing, some supplier issues, technical questions from customers, scheduling work, and checking some larger or unusual payments. I don't think all of those actually require me personally. Some probably just need a clear process or an approval limit. Technical questions may depend on experience, but I haven't separated which ones genuinely need my knowledge from the ones the team could answer. I also haven't documented who could currently take over each of these tasks.",
|
||||
manualReviewCriteria:
|
||||
`Observation fidelity — must preserve the stated facts without strengthening them:\n\n- the listed tasks (quotations, purchasing, supplier issues, technical questions, scheduling, payments)\n- user does not think all necessarily require them personally\n- "some probably" may need process/approval\n- technical-question boundary is unresolved\n- ownership/takeover mapping is undocumented\n\nTentative wording must remain tentative.\n"some probably just need..." must NOT become a definite "some only need..."\nunless equivalent uncertainty remains explicit.\n\nAssumption restraint — the following must be rejected as OVERREACH:\n- quotations are delegable with process/approval\n- payments are delegable with process/approval\n- specific named tasks are feasible to delegate because of the generic "some probably" statement\n- process/approval is sufficient\n- deep expertise is unnecessary\n\nThe invariant: A general or unspecified statement about "some" items must not be attached to particular items from a preceding enumeration unless the user makes that mapping.\nAlso: Tentative/probabilistic language must not be strengthened into definite feasibility/readiness claims.\nassumptions: [] is valid.\n\nFrontier: Do NOT over-specify the exact winning frontier.\ntechnical capability, ownership mapping and process/authority are same-level alternatives.\nThe selected uncertainty must be:\n- directly grounded in the answer text\n- investigation-relevant\n- does not depend on invented item-to-condition mappings\nDo not turn an underdetermined frontier into a false exact-answer test.`,
|
||||
},
|
||||
];
|
||||
|
||||
// ── Deterministic fixture-integrity assertions (zero live calls) ─────────
|
||||
@@ -217,14 +232,15 @@ export const FOCUSED_DECONSTRUCT_REGRESSION_CASE_IDS = [
|
||||
"tentative-observation-fidelity",
|
||||
"genuine-dependency-frontier",
|
||||
"structural-frontier-over-working-example-detail",
|
||||
"tentative-condition-must-not-map-to-specific-items",
|
||||
];
|
||||
|
||||
export function validateRegressionFixtureIntegrity() {
|
||||
const errors = [];
|
||||
|
||||
if (FOCUSED_DECONSTRUCT_REGRESSION_CASES.length !== 7) {
|
||||
if (FOCUSED_DECONSTRUCT_REGRESSION_CASES.length !== 8) {
|
||||
errors.push(
|
||||
`Expected exactly 7 regression cases; got ${FOCUSED_DECONSTRUCT_REGRESSION_CASES.length}`,
|
||||
`Expected exactly 8 regression cases; got ${FOCUSED_DECONSTRUCT_REGRESSION_CASES.length}`,
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -235,8 +235,8 @@ describe("validateFocusedDeconstructSchema", () => {
|
||||
// ── Regression fixture integrity (zero live calls) ──────────────────────────
|
||||
|
||||
describe("FOCUSED_DECONSTRUCT_REGRESSION_CASES fixture integrity", () => {
|
||||
it("has exactly 7 cases", () => {
|
||||
expect(FOCUSED_DECONSTRUCT_REGRESSION_CASES.length).toBe(7);
|
||||
it("has exactly 8 cases", () => {
|
||||
expect(FOCUSED_DECONSTRUCT_REGRESSION_CASES.length).toBe(8);
|
||||
});
|
||||
|
||||
it("all IDs are unique", () => {
|
||||
@@ -249,7 +249,7 @@ describe("FOCUSED_DECONSTRUCT_REGRESSION_CASES fixture integrity", () => {
|
||||
expect(ids).toContain("structural-frontier-over-working-example-detail");
|
||||
});
|
||||
|
||||
it("preserves all six original case IDs", () => {
|
||||
it("preserves all original case IDs and includes the new eighth case", () => {
|
||||
const ids = FOCUSED_DECONSTRUCT_REGRESSION_CASES.map((c) => c.id);
|
||||
for (const origId of [
|
||||
"nearest-frontier-wins",
|
||||
@@ -258,9 +258,11 @@ describe("FOCUSED_DECONSTRUCT_REGRESSION_CASES fixture integrity", () => {
|
||||
"juxtaposition-must-not-create-link",
|
||||
"tentative-observation-fidelity",
|
||||
"genuine-dependency-frontier",
|
||||
"structural-frontier-over-working-example-detail",
|
||||
]) {
|
||||
expect(ids).toContain(origId);
|
||||
}
|
||||
expect(ids).toContain("tentative-condition-must-not-map-to-specific-items");
|
||||
});
|
||||
|
||||
it("validateRegressionFixtureIntegrity reports zero errors", () => {
|
||||
|
||||
Reference in New Issue
Block a user