fix(confidence-engine): preserve intervention fit dependency
This commit is contained in:
@@ -39,6 +39,12 @@
|
||||
- `unexplainedTransitions` now project as unresolved transition nodes and register their source IDs for existing relationship projection; the relationship architecture itself was not redesigned.
|
||||
- The semantic coherence of live `r1` remains a separate unresolved reasoning issue; intervention-fit E was absent in that run and remains unresolved. No live validation has occurred after this deterministic fix.
|
||||
|
||||
## Intervention-fit dependency preservation
|
||||
|
||||
- First-class relationship generation and deterministic projection now work end-to-end; the latest live run projected all three declared relationships correctly.
|
||||
- The remaining semantic weakness was substitution: narrower decision prerequisites were preserved, but the full supplied intervention-fit dependency was not. v0.5 now requires preservation of the user's actual dependency level; narrower evidence prerequisites may coexist but may not replace that higher-order contingency.
|
||||
- No schema, builder, or orchestrator change was required. Deterministic tests prove this instruction exists only; live compliance remains untested. Next restart point: one live intervention-fit validation, followed by bounded repeatability if it passes.
|
||||
|
||||
## Current product architecture
|
||||
|
||||
Three distinct routes, not a single page:
|
||||
|
||||
@@ -38,6 +38,8 @@ Each relationship `fromId` and `toId` MUST reference IDs of semantic units alrea
|
||||
|
||||
Read every relationship literally as `fromId → relationship → toId`. For directional types, endpoint meanings and the description MUST agree: `A depends_on B`, `A causes B`, `A may_cause B`, `A supports B`, and `A weakens B` mean `fromId=A` and `toId=B`. Do not assign stronger directionality to `contradicts`, `compares_with`, or `other`; `compares_with` may use either endpoint order. Before emitting a relationship, read it back as “FROM [relationship] TO”. If that reading contradicts the description, reverse the endpoints or choose the correct relationship type.
|
||||
|
||||
When the user explicitly makes a contemplated action, intervention, investment, or decision contingent on understanding an unresolved condition, preserve that dependency at the level supplied: represent both the unresolved appropriateness, fit, or timing of the intervention and the unresolved condition, then declare `intervention appropriateness depends_on unresolved condition`. Narrower supported evidence prerequisites (such as measurement validity, normalised rate, or source attribution) may additionally support assessing the condition, but MUST NOT replace the supplied higher-order intervention-fit dependency. Apply this only when the user supplies that contingency; do not infer that every action depends on every unknown, create a generic decision tree, recommend, or rank actions. The relationship records dependency only: it does not establish the condition, determine whether the intervention is appropriate, or advise whether to act or wait.
|
||||
|
||||
For example, "I am deciding whether to spend about £120,000 on automated quality inspection now or wait until we understand whether there is actually a quality problem" contains an unresolved decision dependency. A valid reconstruction can represent an unknown such as whether the complaint increase reflects a quality problem automated inspection could address (`u1`) and an unknown such as whether spending £120,000 on automated inspection now is appropriate (`u2`), then declare:
|
||||
|
||||
```json
|
||||
|
||||
@@ -245,6 +245,14 @@ describe("v0.5 prompt", () => {
|
||||
);
|
||||
});
|
||||
|
||||
it("preserves supplied intervention-fit dependencies beyond narrower evidence prerequisites", async () => {
|
||||
const { prompt } = await buildPrompt("Intervention contingency scenario", "v0.5");
|
||||
|
||||
expect(prompt).toContain("intervention appropriateness depends_on unresolved condition");
|
||||
expect(prompt).toContain("Narrower supported evidence prerequisites");
|
||||
expect(prompt).toContain("MUST NOT replace the supplied higher-order intervention-fit dependency");
|
||||
});
|
||||
|
||||
it("retains the provenance stop boundary and interpretation separation", async () => {
|
||||
const { prompt } = await buildPrompt("Contract retention scenario", "v0.5");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user