Files
whetstone_RSA/docs/gate_failure_taxonomy.md
2026-03-31 22:50:40 -06:00

10 KiB

Gate Failure Taxonomy

Purpose

This document defines a first-pass taxonomy for why bounded decision gates fail and how whetstone_RSA should reason about those failures.

The goal is to make gate diagnosis a library capability rather than an ad hoc human judgment call.

This taxonomy is motivated by the whetstone_DSL case study, but it is written as an RSA-library abstraction.

Core Claim

When a bounded gate performs poorly, the default answer should not be "use a larger model."

The library should first determine what kind of failure is happening.

Different failure types require different responses:

  • some need more capacity
  • some need better confidence policy
  • some should be decomposed
  • some should become deterministic
  • some have unstable labels and should not be treated as ordinary classifiers

Failure Classes

1. capacity_limited_gate

Description:

The gate is well-defined and reasonably stationary, but the current model tier does not have enough capacity to separate the decision surface reliably.

Characteristic symptoms:

  • performance improves with training but plateaus below target
  • label boundaries appear coherent under manual inspection
  • confusion is broad rather than concentrated in one structural pattern
  • richer models or larger context are plausible fixes

Likely root causes:

  • too little model capacity
  • too little representational depth
  • long-range dependencies exceed current context handling
  • input compression is too lossy for the chosen tier

Recommended probes:

  • larger-model comparison
  • context-width probe
  • calibration probe
  • feature ablation probe

Recommended interventions:

  • move to a larger specialist tier
  • add better structured features
  • use a richer encoder while preserving the same gate schema

2. factorizable_gate

Description:

The gate is represented as one multiclass decision, but the actual semantics are a composition of smaller independent or semi-independent decisions.

Characteristic symptoms:

  • flat multiclass performance despite apparently simple semantics
  • classes can be expressed as Cartesian products or hierarchical branches
  • confusion concentrates between composite labels
  • downstream action is itself assembled from multiple sub-decisions

Likely root causes:

  • a product decision has been collapsed into one label
  • one model is being asked to infer multiple policy axes at once
  • the current evaluation obscures easier sub-structure

Recommended probes:

  • factorization probe
  • hierarchical-gate probe
  • per-axis confidence probe

Recommended interventions:

  • split into multiple smaller gates
  • add a deterministic combiner over sub-gates
  • replace flat multiclass routing with hierarchical routing

3. non_stationary_gate

Description:

The label semantics change over time because they depend on evolving tooling, policies, or environment state rather than a stable ontology.

Characteristic symptoms:

  • labels become stale as the surrounding system improves
  • class definitions drift without changing the input domain
  • retraining is needed because the target policy moved, not because the model forgot
  • disagreements cluster at capability boundaries rather than lexical boundaries

Likely root causes:

  • output labels encode current deployment policy
  • the gate depends on tool availability or maturity
  • class meaning is roadmap-dependent

Recommended probes:

  • schema-stability probe
  • temporal re-label probe
  • policy-variant probe

Recommended interventions:

  • separate stable ontology fields from changing policy fields
  • turn part of the decision into a policy layer above the model
  • use hierarchical routing where the first stage predicts a stable property and a later stage applies current deployment policy

4. missing_context_gate

Description:

The gate might be learnable, but the current input encoding omits the context needed to make the decision safely.

Characteristic symptoms:

  • short-text performance is poor but humans request surrounding context
  • errors cluster on inputs that depend on hidden project or workflow state
  • adding metadata is expected to help more than scaling parameters
  • the same surface text would require different answers in different contexts

Likely root causes:

  • important state is absent from the input
  • text summaries collapse policy-critical structure
  • the gate implicitly depends on project metadata, not just user language

Recommended probes:

  • context-width probe
  • metadata augmentation probe
  • stateful-context probe

Recommended interventions:

  • enrich inputs with structured metadata
  • separate text understanding from stateful decision logic
  • require abstention when needed context is unavailable

5. deterministic_disguised_as_ml_gate

Description:

The gate looks statistical at first glance, but the output is largely determined by known rules or a stable formula.

Characteristic symptoms:

  • very high performance with synthetic or structural encodings
  • human explanation reduces to a crisp rule
  • model errors mostly reflect encoding mismatch, not true ambiguity
  • downstream users already trust a formula more than the classifier

Likely root causes:

  • a deterministic rule was not implemented yet
  • the learned model is being used as a proxy for explicit policy
  • training data was easier to generate than writing the rule

Recommended probes:

  • deterministic-rule probe
  • symbolic baseline probe
  • feature-rule extraction probe

Recommended interventions:

  • replace with deterministic logic
  • keep the model only as a convenience wrapper over explicit rules
  • use the learned gate only when the rule inputs are partially missing

6. label_space_mismatch

Description:

The gate's labels are underspecified, overlapping, misordered, or otherwise not aligned with the actual decision boundary the system needs.

Characteristic symptoms:

  • confusion clusters around neighboring or semantically overlapping labels
  • multiple labels seem equally valid for the same input
  • label guidelines are hard to explain concisely
  • accuracy does not reflect practical usefulness because some "mistakes" are close

Likely root causes:

  • labels mix ontology and policy
  • labels are too coarse or too fine
  • adjacent classes are not operationally distinct

Recommended probes:

  • confusion-structure probe
  • class-merge probe
  • hierarchical-label probe

Recommended interventions:

  • merge or split labels
  • add hierarchy to the label space
  • redefine evaluation so high-cost confusions are distinguished from near-miss ones

7. guardrail_limited_gate

Description:

The gate is good enough to be useful, but not good enough to be trusted without a deployment policy around it.

Characteristic symptoms:

  • raw accuracy is moderate but confidence is informative
  • abstention can isolate hard cases
  • downstream checks can catch many residual errors
  • accepted predictions are much stronger than overall predictions

Likely root causes:

  • the model is solving an economically useful subset of the problem
  • deployment policy has not yet been calibrated

Recommended probes:

  • confidence-threshold probe
  • abstain-coverage probe
  • retry-recovery probe
  • deterministic-check catch-rate probe

Recommended interventions:

  • deploy with guardrails
  • set confidence thresholds by risk tier
  • add retry and escalation paths

Diagnostic Probes

The taxonomy is only useful if the library has standard probes.

confidence_threshold_probe

Question:

Does the gate become safe and useful when low-confidence cases abstain?

Outputs:

  • accept rate
  • accuracy on accepted
  • silent error estimate

factorization_probe

Question:

Can a weak multiclass gate be re-expressed as multiple smaller gates with a better combined policy?

Outputs:

  • candidate factorization structure
  • estimated per-axis difficulty
  • combined accuracy or accepted-precision comparison

deterministic_rule_probe

Question:

Is the gate mostly encoding a crisp rule that should live in ordinary software?

Outputs:

  • symbolic baseline score
  • overlap between model errors and rule violations

schema_stability_probe

Question:

Are the labels stable over time, or do they move with deployment policy and tool availability?

Outputs:

  • stability rating
  • ontology-vs-policy split recommendation

context_width_probe

Question:

Is performance limited by missing project or workflow context?

Outputs:

  • delta from richer context
  • recommended minimum context set

confusion_structure_probe

Question:

Are the observed errors random, adjacent, hierarchical, or compositional?

Outputs:

  • confusion topology
  • merge, split, or hierarchy recommendation

The library should approach gate triage in this order:

  1. Check whether the gate is deterministic in disguise.
  2. Check whether the label space is stable and coherent.
  3. Check whether the gate is factorizable.
  4. Check whether critical context is missing.
  5. Check whether a guarded deployment policy is already sufficient.
  6. Only then treat scale as the primary lever.

Library Implications

To support this taxonomy, whetstone_RSA should eventually represent each gate with enough metadata for diagnosis.

Suggested gate metadata:

  • gate_id
  • label_schema
  • label_stability
  • task_family
  • input_modalities
  • supports_abstain
  • deterministic_baseline_available
  • candidate_factorizations
  • risk_tier

Suggested diagnostic result shape:

GateDiagnosis
  primary_failure_class
  secondary_failure_classes
  supporting_signals
  recommended_probes
  recommended_interventions
  confidence

Case-Study Motivators

The case study motivates this taxonomy, but does not constrain it.

  • A gate like prereq_op suggests factorizable_gate
  • A gate like automatability suggests non_stationary_gate
  • A gate like confidence_tier suggests deterministic_disguised_as_ml_gate
  • A gate like verification_type or worker_type may become guardrail_limited_gate

These examples are evidence of recurring patterns, not bespoke exceptions.

Summary

The main architectural insight is simple:

Bounded-gate failure is not one problem.

If the RSA library can classify failure types before scaling models blindly, it will be cheaper, safer, and easier to generalize across domains.