Antibody triage and assay-conditioned rescue

Choose the synthesis set. Design the next round.

BioFold reads paired VH and VL libraries with assay conditions and buyer constraints. It returns a hard-gated Pareto shortlist before synthesis, then routes observed failures to zero to three legal single-substitution proposals, each with modeled target and guard tradeoffs.

  • Before synthesisHard constraints, Pareto tiers, lineage diversity, uncertainty
  • After assayFailure route, exhaustive legal search, target and guard deltas
  • Every decisionApplicability, responsible residues, evidence status, provenance
  • Every CDR editBinding requirement, new liabilities, falsifier

One record covers both decision moments.

BioFold allocates a fixed synthesis budget before assay. An observed failure then starts a rescue decision that either returns legal edits for testing or names why no proposal is justified.

01 · Before synthesis

Build the admissible shortlist.

BioFold applies declared hard constraints, evaluates supported physical and assay fields, partitions admissible candidates into Pareto tiers, then fills the budget with visible lineage and diversity rules.

Input
Paired VH/VL library, assay conditions, budget, protected positions, missing-value policy
Decision
SYNTHESIZE, DEFER, or ABSTAIN
Trace
Hard gates, Pareto tier, lineage, uncertainty, applicability, tie-break, provenance
02 · After assay

Route the failure before proposing an edit.

The measured phenotype selects the target axis. BioFold enumerates every allowed single substitution, rejects hard guard failures, and returns zero to three non-dominated proposals with distinct target and guard tradeoffs.

Input
Observed assay failure, parent sequences, assay protocol, protected positions, optional structure
Decision
PROPOSE, NEEDS_STRUCTURE, NEEDS_ASSAY, or ABSTAIN
Trace
Routed axis, legal count, exact deltas, new liabilities, binding requirement, falsifier
Interactive sample report

Every state is visible, including abstention.

Switch between the library decision and the next-round rescue record. The desktop tables and mobile cards carry the same fields.

BF-EX-024 is a synthetic example for contract inspection. Its values demonstrate output shape and do not claim measured product performance.

contract v1 · sample
Synthesis budget2
Selected2
Lineages represented2
Abstentions1
Candidate states for the BF-EX-024 example library
Candidate Lineage Coverage Principal axis Assay direction Hard constraints Pareto tier Uncertainty Decision
BF-021LIN-AVH/VL, CDR, and structure mappedHydrophobic surface driveLower HIC retentionPASS1LOWSYNTHESIZE
BF-044LIN-BVH/VL, CDR, and structure mappedHydrophobic surface driveLower HIC retentionPASS1LOWSYNTHESIZE
BF-018LIN-AVH/VL, CDR, and structure mappedHydrophobic surface driveLower HIC retentionPASS2MODERATEDEFER
BF-031LIN-CVH/VL, CDR, and structure mappedChemical sitesNot modeled after hard-gate failureFAIL · forbidden NVTNot assignedLOWDEFER
BF-077LIN-DCDR mapping unresolvedNot evaluatedNot evaluatedNot evaluatedNot assignedNot estimatedABSTAIN

BF-021

Lineage
LIN-A
Coverage
VH/VL, CDR, and structure mapped
Principal axis
Hydrophobic surface drive
Assay direction
Lower HIC retention
Hard constraints
PASS
Pareto tier
1
Uncertainty
LOW
Decision
SYNTHESIZE

BF-044

Lineage
LIN-B
Coverage
VH/VL, CDR, and structure mapped
Principal axis
Hydrophobic surface drive
Assay direction
Lower HIC retention
Hard constraints
PASS
Pareto tier
1
Uncertainty
LOW
Decision
SYNTHESIZE

BF-018

Lineage
LIN-A
Coverage
VH/VL, CDR, and structure mapped
Principal axis
Hydrophobic surface drive
Assay direction
Lower HIC retention
Hard constraints
PASS
Pareto tier
2
Uncertainty
MODERATE
Decision
DEFER

BF-031

Lineage
LIN-C
Coverage
VH/VL, CDR, and structure mapped
Principal axis
Chemical sites
Assay direction
Not modeled after hard-gate failure
Hard constraints
FAIL · forbidden NVT
Pareto tier
Not assigned
Uncertainty
LOW
Decision
DEFER

BF-077

Lineage
LIN-D
Coverage
CDR mapping unresolved
Principal axis
Not evaluated
Assay direction
Not evaluated
Hard constraints
Not evaluated
Pareto tier
Not assigned
Uncertainty
Not estimated
Decision
ABSTAIN
Evidence classes: hydrophobic surface drive, charge, and licensed charge texture are DERIVED; chemical-site rules are CONVENTIONAL; HIC observations and stability guards are EMPIRICAL or FITTED as labeled in the downloaded record.
BF-018 is deferred by Pareto tier and the declared lineage cap. BF-031 fails a buyer hard constraint. BF-077 abstains because canonical CDR mapping is unresolved, so unsupported fields never become favorable zeros.

Observed phenotype selects the rescue question.

BioFold routes ten declared failure classes. Each route names the target axis, the required guards, and the state returned when the required evidence is absent.

BioFold assay failure router with ten observed failure classes
Observed failureRouted objectiveRequired guards or inputsDecision route
High HIC or SMAC retentionReduce exposed or CDR-localized nonpolar driveCharge, chemistry, stability, protected residuesPROPOSE after legal search
High PSR, BVP, CIC, or related polyspecificityReduce implicated positive charge state or textureHydrophobicity, declared pH, protected residues, binding assayPROPOSE when the assay mapping applies
High AC-SINS or self-association with a charge signatureMove charge state or asymmetry in the supported directionAssay-specific mapping and binding assayPROPOSE when the charge route is applicable
Oxidation at a named Met or TrpRemove or shield the named chemical siteStructure context, binding, stabilityNEEDS_STRUCTURE before shielding claims
Deamidation or isomerization at a named motifRemove the motif or reduce local reactivityPaired assay evidence or validated geometry contextNEEDS_ASSAY when context evidence is absent
Explicit free cysteine or unwanted sequonRemove the rule liabilityRequired disulfides and function constraintsPROPOSE after deterministic motif guards
Low thermal stabilityFilter with sequence stability, then use structure-gated rankingAdmissible structure for packing and backbone deltasABSTAIN when the sequence guard is unresolved and no admissible structure is supplied
Low expression without a mapped liabilityNo physical route assignedAdditional assay or mechanism evidenceABSTAIN
Affinity or potency lossOutside the rescue modelBuyer affinity model or experimentABSTAIN
Conformational or folding failure without structureNo sequence-only route assignedStructure or a separately validated mechanismNEEDS_STRUCTURE

01 · High HIC or SMAC retention

Objective
Reduce exposed or CDR-localized nonpolar drive
Guards
Charge, chemistry, stability, protected residues
Route
PROPOSE after legal search

02 · High PSR, BVP, CIC, or related polyspecificity

Objective
Reduce implicated positive charge state or texture
Guards
Hydrophobicity, declared pH, protected residues, binding assay
Route
PROPOSE when the assay mapping applies

03 · High AC-SINS or self-association with a charge signature

Objective
Move charge state or asymmetry in the supported direction
Guards
Assay-specific mapping and binding assay
Route
PROPOSE when the charge route is applicable

04 · Oxidation at a named Met or Trp

Objective
Remove or shield the named chemical site
Guards
Structure context, binding, stability
Route
NEEDS_STRUCTURE before shielding claims

05 · Deamidation or isomerization at a named motif

Objective
Remove the motif or reduce local reactivity
Guards
Paired assay evidence or validated geometry context
Route
NEEDS_ASSAY when context evidence is absent

06 · Explicit free cysteine or unwanted sequon

Objective
Remove the rule liability
Guards
Required disulfides and function constraints
Route
PROPOSE after deterministic motif guards

07 · Low thermal stability

Objective
Filter with sequence stability, then use structure-gated ranking
Guards
Admissible structure for packing and backbone deltas
Route
ABSTAIN when the sequence guard is unresolved and no admissible structure is supplied

08 · Low expression without a mapped liability

Objective
No physical route assigned
Guards
Additional assay or mechanism evidence
Route
ABSTAIN

09 · Affinity or potency loss

Objective
Outside the rescue model
Guards
Buyer affinity model or experiment
Route
ABSTAIN

10 · Conformational or folding failure without structure

Objective
No sequence-only route assigned
Guards
Structure or a separately validated mechanism
Route
NEEDS_STRUCTURE

The vector records modeled target and guard tradeoffs alongside the decision.

Each component keeps its definition, units, assumptions, structural requirements, applicability, uncertainty, and responsible residues. Assay mappings and buyer thresholds remain separate.

hydrophobic_surface_drive

State-dependent solvent excess free-energy output with volume, surface, curvature, connectivity, and local chemistry contributions. Rescue reports the exact mutant delta.

charge_state

Total charge at the declared pH, plus localized positive and negative charge texture when the assay contract licenses those fields.

chemical_sites

Named oxidation, deamidation, isomerization, cysteine, and sequon sites with motif, context gate, residue location, and evidence class.

stability_guard_sequence

A sequence-level substitution guard used for rejection, warnings, or unresolved states. It does not stand in for affinity, expression, or foldability.

stability_guard_structure

Packing and backbone checks run only when an admissible structure has recorded provenance and chain mapping.

coverage_and_applicability

Component coverage, assumptions, out-of-distribution state, missing fields, uncertainty drivers, and the exact reason for any abstention.

API contract

Two endpoints. One inspectable decision record.

The examples below are complete and valid JSON. Requests carry paired sequences, assay conditions, and buyer constraints. Responses use the same states and fields shown in the sample report.

Library decision
POST /v1/antibody/triage
Next-round decision
POST /v1/antibody/rescue
POST /v1/antibody/triageantibody.triage.v1
Triage requestComplete example
Paired library, assay context, buyer constraints
{
  "contract_version": "antibody.triage.v1",
  "sample": true,
  "library": {
    "library_id": "BF-EX-024",
    "candidates": [
      {
        "candidate_id": "BF-021",
        "lineage_id": "LIN-A",
        "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARWGGDGFYAMDYWGQGTLVTVSS",
        "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSYPWTFGQGTKVEIK",
        "known_parent_id": null,
        "mutation_history": [],
        "structure": {"source_type": "BUYER_MODEL", "source_id": "sample-buyer-model-BF-021", "evidence_class": "CONVENTIONAL", "chain_mapping": {"VH": "A", "VL": "B"}}
      },
      {
        "candidate_id": "BF-044",
        "lineage_id": "LIN-B",
        "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARSGGDGFYAMDYWGQGTLVTVSS",
        "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSYPWTFGQGTKVEIK",
        "known_parent_id": null,
        "mutation_history": [],
        "structure": {"source_type": "BUYER_MODEL", "source_id": "sample-buyer-model-BF-044", "evidence_class": "CONVENTIONAL", "chain_mapping": {"VH": "A", "VL": "B"}}
      },
      {
        "candidate_id": "BF-018",
        "lineage_id": "LIN-A",
        "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARWGGWGFWAMDYWGQGTLVTVSS",
        "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSFPWTFGQGTKVEIK",
        "known_parent_id": null,
        "mutation_history": [],
        "structure": {"source_type": "BUYER_MODEL", "source_id": "sample-buyer-model-BF-018", "evidence_class": "CONVENTIONAL", "chain_mapping": {"VH": "A", "VL": "B"}}
      },
      {
        "candidate_id": "BF-031",
        "lineage_id": "LIN-C",
        "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARNVTGDFYAMDYWGQGTLVTVSS",
        "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSYPWTFGQGTKVEIK",
        "known_parent_id": null,
        "mutation_history": [],
        "structure": {"source_type": "BUYER_MODEL", "source_id": "sample-buyer-model-BF-031", "evidence_class": "CONVENTIONAL", "chain_mapping": {"VH": "A", "VL": "B"}}
      },
      {
        "candidate_id": "BF-077",
        "lineage_id": "LIN-D",
        "vh_sequence": "QVQLVQSGAEVKKPGASVKVSCKASGYTFTSYWMHWVRQAPGQGLEWMGRIDPSDSETRYSPSFQGQVTISADKSISTAYLQWSSLKASDTAMYYCARGGYYGMDVWGQGTTVTVSS",
        "vl_sequence": "EIVLTQSPATLSLSPGERATLSCRASQSVSSYLAWYQQKPGQAPRLLIYDASNRATGIPARFSGSGSGTDFTLTISSLEPEDFAVYYCQQRSNWPPTFGQGTKVEIK",
        "known_parent_id": null,
        "mutation_history": [],
        "structure": null
      }
    ]
  },
  "assay_context": {
    "target_assays": [
      {
        "assay": "HIC",
        "protocol_id": "sample-hic-protocol.v1",
        "pass_criterion": {"operator": "<=", "value": 11.0, "unit": "min", "evidence_class": "CONVENTIONAL"},
        "desirability": "lower_is_better"
      }
    ],
    "buffer": {"pH": 6.0, "ionic_strength_mM": 150, "formulation": "phosphate buffered saline"},
    "concentration_mg_mL": 1.0,
    "temperature_C": 25,
    "missing_value_policy": "ABSTAIN"
  },
  "buyer_constraints": {
    "synthesis_budget": 2,
    "lineage_cap": 1,
    "protected_residues": [
      {"chain": "H", "positions": [33, 50, 52], "reason": "affinity critical"}
    ],
    "protected_motifs": [],
    "allowed_mutation_regions": ["H3", "L3"],
    "maximum_substitutions_per_proposal": 1,
    "cdr_mutation_policy": "ALLOW_WITH_BINDING_GUARD",
    "preserve_canonical_cysteines": true,
    "preserve_disulfides": true,
    "forbidden_amino_acids": [],
    "forbidden_motifs": ["NXS", "NXT"],
    "declared_tie_breakers": ["lower_HIC_estimate", "lineage_diversity", "candidate_id_ascending"]
  }
}
Triage responseAll shortlist states
Hard gates, Pareto tiers, diversity, applicability, uncertainty, provenance
{
  "contract_version": "antibody.triage.v1",
  "request_id": "req_triage_example_024",
  "sample": true,
  "library_id": "BF-EX-024",
  "policy": {
    "selection_method": "CONSTRAINED_PARETO",
    "synthesis_budget": 2,
    "lineage_cap": 1,
    "declared_tie_breakers": ["lower_HIC_estimate", "lineage_diversity", "candidate_id_ascending"]
  },
  "summary": {
    "candidate_count": 5,
    "synthesize_count": 2,
    "defer_count": 2,
    "abstain_count": 1,
    "selected_lineage_count": 2
  },
  "component_contracts": {
    "hydrophobic_surface_drive": {"version": "hydrophobic-surface-drive.v1", "assumptions": ["buyer_structure_chain_mapping_accepted", "declared_thermodynamic_state"], "required_structure": true},
    "charge_state": {"version": "charge-state.v1", "assumptions": ["declared_pH", "isolated_group_protonation"]},
    "positive_charge_texture": {"version": "charge-texture.v1", "assumptions": ["buyer_structure_chain_mapping_accepted", "observation_model_licensed"]},
    "negative_charge_texture": {"version": "charge-texture.v1", "assumptions": ["buyer_structure_chain_mapping_accepted", "observation_model_licensed"]},
    "chemical_sites": {"version": "chemical-sites.v1", "assumptions": ["canonical_motif_rules", "full_sequence_rescan"]},
    "stability_guard_sequence": {"version": "stability-sequence-guard.v1", "assumptions": ["single_substitution_guard"], "direction_of_desirability": "higher_is_better"},
    "stability_guard_structure": {"version": "stability-structure-guard.v1", "assumptions": ["buyer_structure_chain_mapping_accepted"], "direction_of_desirability": "higher_is_better"}
  },
  "candidate_results": [
    {
      "candidate_id": "BF-021",
      "lineage_id": "LIN-A",
      "hard_constraints": {"state": "PASS", "reasons": []},
      "pareto_tier": 1,
      "diversity": {"selected_lineage_representative": true},
      "applicability": {"state": "APPLICABLE", "coverage": "VH_VL_CDR_AND_STRUCTURE_MAPPED"},
      "uncertainty": {"state": "LOW", "drivers": []},
      "physical_vector": {
        "hydrophobic_surface_drive": {"value": 18.2, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-021", "responsible_residues": ["H:W99"]},
        "charge_state": {"value": -0.4, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
        "positive_charge_texture": {"value": 0.21, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "negative_charge_texture": {"value": 0.34, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "chemical_sites": {"evidence_class": "CONVENTIONAL", "sites": []},
        "stability_guard_sequence": {"state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability_guard_structure": {"state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-021"}
      },
      "assay_observations": {
        "HIC": {
          "estimate": {"value": 8.7, "unit": "min", "evidence_class": "FITTED"},
          "direction": "lower_is_better",
          "mapping_version": "hic.observation.v1",
          "applicable_conditions": "pH_6.0_ionic_strength_150_mM",
          "applicable_cohort": "paired_VH_VL_with_accepted_chain_mapping",
          "uncertainty": "LOW",
          "out_of_distribution": false
        }
      },
      "decision": {"shortlist_position": 1, "state": "SYNTHESIZE", "reason": "pareto_tier_1_and_lineage_rule"},
      "decision_trace": ["hard_constraints_pass", "applicability_pass", "pareto_tier_1", "lineage_cap_pass", "budget_fill"]
    },
    {
      "candidate_id": "BF-044",
      "lineage_id": "LIN-B",
      "hard_constraints": {"state": "PASS", "reasons": []},
      "pareto_tier": 1,
      "diversity": {"selected_lineage_representative": true},
      "applicability": {"state": "APPLICABLE", "coverage": "VH_VL_CDR_AND_STRUCTURE_MAPPED"},
      "uncertainty": {"state": "LOW", "drivers": []},
      "physical_vector": {
        "hydrophobic_surface_drive": {"value": 17.6, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-044", "responsible_residues": ["H:Y105"]},
        "charge_state": {"value": 0.2, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
        "positive_charge_texture": {"value": 0.28, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "negative_charge_texture": {"value": 0.27, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "chemical_sites": {"evidence_class": "CONVENTIONAL", "sites": []},
        "stability_guard_sequence": {"state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability_guard_structure": {"state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-044"}
      },
      "assay_observations": {
        "HIC": {
          "estimate": {"value": 9.3, "unit": "min", "evidence_class": "FITTED"},
          "direction": "lower_is_better",
          "mapping_version": "hic.observation.v1",
          "applicable_conditions": "pH_6.0_ionic_strength_150_mM",
          "applicable_cohort": "paired_VH_VL_with_accepted_chain_mapping",
          "uncertainty": "LOW",
          "out_of_distribution": false
        }
      },
      "decision": {"shortlist_position": 2, "state": "SYNTHESIZE", "reason": "pareto_tier_1_and_lineage_rule"},
      "decision_trace": ["hard_constraints_pass", "applicability_pass", "pareto_tier_1", "lineage_cap_pass", "budget_fill"]
    },
    {
      "candidate_id": "BF-018",
      "lineage_id": "LIN-A",
      "hard_constraints": {"state": "PASS", "reasons": []},
      "pareto_tier": 2,
      "diversity": {"selected_lineage_representative": false, "lineage_cap_reached": true},
      "applicability": {"state": "APPLICABLE", "coverage": "VH_VL_CDR_AND_STRUCTURE_MAPPED"},
      "uncertainty": {"state": "MODERATE", "drivers": ["HIC_estimate_near_applicability_edge"]},
      "physical_vector": {
        "hydrophobic_surface_drive": {"value": 24.9, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018", "responsible_residues": ["H:W99", "H:W102", "L:F94"]},
        "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
        "positive_charge_texture": {"value": 0.46, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "negative_charge_texture": {"value": 0.18, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "chemical_sites": {"evidence_class": "CONVENTIONAL", "sites": []},
        "stability_guard_sequence": {"state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability_guard_structure": {"state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
      },
      "assay_observations": {
        "HIC": {
          "estimate": {"value": 13.8, "unit": "min", "evidence_class": "FITTED"},
          "direction": "lower_is_better",
          "mapping_version": "hic.observation.v1",
          "applicable_conditions": "pH_6.0_ionic_strength_150_mM",
          "applicable_cohort": "paired_VH_VL_with_accepted_chain_mapping",
          "uncertainty": "MODERATE",
          "out_of_distribution": false
        }
      },
      "decision": {"shortlist_position": null, "state": "DEFER", "reason": "pareto_tier_2_and_lineage_cap"},
      "decision_trace": ["hard_constraints_pass", "applicability_pass", "pareto_tier_2", "lineage_cap_reached", "defer"]
    },
    {
      "candidate_id": "BF-031",
      "lineage_id": "LIN-C",
      "hard_constraints": {"state": "FAIL", "reasons": ["forbidden_motif_NVT_at_H99_H101"]},
      "pareto_tier": null,
      "diversity": {"selected_lineage_representative": false},
      "applicability": {"state": "APPLICABLE", "coverage": "VH_VL_CDR_AND_STRUCTURE_MAPPED"},
      "uncertainty": {"state": "LOW", "drivers": []},
      "physical_vector": {
        "hydrophobic_surface_drive": {"value": 19.4, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-031", "responsible_residues": ["H:Y105"]},
        "charge_state": {"value": 0.3, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
        "positive_charge_texture": {"value": 0.29, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "negative_charge_texture": {"value": 0.24, "unit": "dimensionless", "evidence_class": "DERIVED"},
        "chemical_sites": {"evidence_class": "CONVENTIONAL", "sites": [{"motif": "NVT", "chain": "H", "start_position": 99, "context": "unwanted_sequon"}]},
        "stability_guard_sequence": {"state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability_guard_structure": {"state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-031"}
      },
      "assay_observations": {"HIC": {"estimate": {"value": null, "unit": "min", "evidence_class": "UNSUPPORTED"}, "state": "NOT_EVALUATED", "reason": "buyer_hard_constraint_failed", "direction": "lower_is_better", "mapping_version": "hic.observation.v1", "applicable_cohort": "paired_VH_VL_with_accepted_chain_mapping", "applicable_conditions": "pH_6.0_ionic_strength_150_mM", "uncertainty": "NOT_ESTIMATED", "out_of_distribution": false}},
      "decision": {"shortlist_position": null, "state": "DEFER", "reason": "buyer_hard_constraint_failed"},
      "decision_trace": ["hard_constraint_failed", "pareto_not_assigned", "defer"]
    },
    {
      "candidate_id": "BF-077",
      "lineage_id": "LIN-D",
      "hard_constraints": {"state": "NOT_EVALUATED", "reasons": ["canonical_CDR_mapping_unresolved"]},
      "pareto_tier": null,
      "diversity": {"selected_lineage_representative": false},
      "applicability": {"state": "OUT_OF_SCOPE", "coverage": "VH_VL_PRESENT_CDR_MAPPING_UNRESOLVED"},
      "uncertainty": {"state": "NOT_ESTIMATED", "drivers": ["mapping_unresolved"]},
      "physical_vector": {
        "hydrophobic_surface_drive": {"value": null, "unit": "kJ/mol", "evidence_class": "UNSUPPORTED", "status": "ABSTAIN", "reason": "canonical_CDR_mapping_unresolved"},
        "charge_state": {"value": null, "unit": "e", "pH": 6.0, "evidence_class": "UNSUPPORTED", "status": "ABSTAIN", "reason": "required_mapping_unresolved"},
        "positive_charge_texture": {"value": null, "unit": "dimensionless", "evidence_class": "UNSUPPORTED", "status": "ABSTAIN", "reason": "required_mapping_unresolved"},
        "negative_charge_texture": {"value": null, "unit": "dimensionless", "evidence_class": "UNSUPPORTED", "status": "ABSTAIN", "reason": "required_mapping_unresolved"},
        "chemical_sites": {"sites": null, "evidence_class": "UNSUPPORTED", "status": "ABSTAIN", "reason": "required_mapping_unresolved"},
        "stability_guard_sequence": {"state": "ABSTAIN", "evidence_class": "UNSUPPORTED", "reason": "required_mapping_unresolved"},
        "stability_guard_structure": {"state": "ABSTAIN", "evidence_class": "UNSUPPORTED", "reason": "structure_and_chain_mapping_unavailable"}
      },
      "assay_observations": {"HIC": {"estimate": {"value": null, "unit": "min", "evidence_class": "UNSUPPORTED"}, "state": "ABSTAIN", "reason": "required_physical_axis_unavailable", "direction": "lower_is_better", "mapping_version": "hic.observation.v1", "applicable_cohort": "paired_VH_VL_with_accepted_chain_mapping", "applicable_conditions": "pH_6.0_ionic_strength_150_mM", "uncertainty": "NOT_ESTIMATED", "out_of_distribution": true}},
      "decision": {"shortlist_position": null, "state": "ABSTAIN", "reason": "applicability_failed"},
      "decision_trace": ["mapping_unresolved", "applicability_failed", "unsupported_fields_not_zeroed", "abstain"]
    }
  ],
  "provenance": {
    "engine_version": "biofold-antibody-1.0.0",
    "physical_object_version": "physical-vector.v1",
    "observation_versions": ["hic.observation.v1"],
    "policy_version": "triage.policy.v1",
    "hash_scope": {"input": "sha256_of_UTF8_JSON.stringify_request", "output": "sha256_of_UTF8_JSON.stringify_response_omitting_provenance.output_hash_and_provenance.served_at"},
    "input_hash": "sha256:f11331e0c1d624befc9e7c88b95849cffcfd28bc5db7f81a5a87b791e19247c1",
    "output_hash": "sha256:f5be9ea1f4fe790b1538bb253477b9f2682c5db09bafe021fb76284f5f22b21f",
    "served_at": "2026-07-10T12:00:00Z"
  }
}
POST /v1/antibody/rescueantibody.rescue.v1
Rescue requestFour routed cases
Observed failures, parents, assay context, edit constraints
{
  "contract_version": "antibody.rescue.v1",
  "sample": true,
  "parents": [
    {
      "candidate_id": "BF-018",
      "lineage_id": "LIN-A",
      "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARWGGWGFWAMDYWGQGTLVTVSS",
      "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSFPWTFGQGTKVEIK",
      "structure": {"source_type": "BUYER_MODEL", "source_id": "sample-buyer-model-BF-018", "evidence_class": "CONVENTIONAL", "chain_mapping": {"VH": "A", "VL": "B"}}
    },
    {
      "candidate_id": "BF-226",
      "lineage_id": "LIN-E",
      "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSMISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARGGYGMDVWGQGTLVTVSS",
      "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSYPWTFGQGTKVEIK",
      "structure": null
    },
    {
      "candidate_id": "BF-118",
      "lineage_id": "LIN-F",
      "vh_sequence": "QVQLVQSGAEVKKPGASVKVSCKASGYTFTSYWMHWVRQAPGQGLEWMGRIDPSDSETRYSPSFQGQVTISADKSISTAYLQWSSLKASDTAMYYCARGGYYGMDVWGQGTTVTVSS",
      "vl_sequence": "EIVLTQSPATLSLSPGERATLSCRASQSVSSYLAWYQQKPGQAPRLLIYDASNRATGIPARFSGSGSGTDFTLTISSLEPEDFAVYYCQQRSNWPPTFGQGTKVEIK",
      "structure": null
    },
    {
      "candidate_id": "BF-903",
      "lineage_id": "LIN-G",
      "vh_sequence": "EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYAMSWVRQAPGKGLEWVSAISGSGGSTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARGGYYGMDVWGQGTLVTVSS",
      "vl_sequence": "DIQMTQSPSSLSASVGDRVTITCRASQGIRNDLGWYQQKPGKAPKLLIYAASSLQSGVPSRFSGSGSGTDFTLTISSLQPEDFATYYCLQHNSYPWTFGQGTKVEIK",
      "structure": null
    }
  ],
  "assay_protocols": [
    {"protocol_id": "sample-hic-protocol.v1", "assay": "HIC", "version": "1", "conditions_ref": "assay_context"},
    {"protocol_id": "sample-oxidation-protocol.v1", "assay": "MET_OXIDATION", "version": "1", "conditions_ref": "assay_context"},
    {"protocol_id": "sample-spr-protocol.v1", "assay": "SPR_KD", "version": "1", "conditions_ref": "assay_context"},
    {"protocol_id": "sample-binding-guard.v1", "assay": "SPR_KD", "version": "1", "conditions_ref": "assay_context"},
    {"protocol_id": "sample-expression-guard.v1", "assay": "transient_expression_titer", "version": "1", "conditions_ref": "assay_context"},
    {"protocol_id": "sample-stability-guard.v1", "assay": "DSF_Tm", "version": "1", "conditions_ref": "assay_context"}
  ],
  "cases": [
    {
      "case_id": "BF-RES-401",
      "candidate_id": "BF-018",
      "observed_failure": {"assay": "HIC", "protocol_id": "sample-hic-protocol.v1", "value": 14.6, "unit": "min", "evidence_class": "EMPIRICAL", "failure_criterion": {"operator": ">", "value": 11.0, "unit": "min", "evidence_class": "CONVENTIONAL"}, "confidence": "CONFIRMED"},
      "guard_assays": {
        "binding": {"assay": "SPR_KD", "protocol_id": "sample-binding-guard.v1", "value": 3.2, "unit": "nM", "pass_criterion": {"operator": "<=", "value": 5.0, "unit": "nM", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "expression": {"assay": "transient_expression_titer", "protocol_id": "sample-expression-guard.v1", "value": 125, "unit": "mg/L", "pass_criterion": {"operator": ">=", "value": 100, "unit": "mg/L", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability": {"assay": "DSF_Tm", "protocol_id": "sample-stability-guard.v1", "value": 68.1, "unit": "degC", "pass_criterion": {"operator": ">=", "value": 65.0, "unit": "degC", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"}
      }
    },
    {
      "case_id": "BF-RES-226",
      "candidate_id": "BF-226",
      "observed_failure": {"assay": "MET_OXIDATION", "protocol_id": "sample-oxidation-protocol.v1", "value": 18.0, "unit": "percent", "evidence_class": "EMPIRICAL", "failure_criterion": {"operator": ">", "value": 10.0, "unit": "percent", "evidence_class": "CONVENTIONAL"}, "named_site": "H:M34", "confidence": "CONFIRMED"},
      "guard_assays": {
        "binding": {"assay": "SPR_KD", "protocol_id": "sample-binding-guard.v1", "value": 4.1, "unit": "nM", "pass_criterion": {"operator": "<=", "value": 5.0, "unit": "nM", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "expression": {"assay": "transient_expression_titer", "protocol_id": "sample-expression-guard.v1", "value": 132, "unit": "mg/L", "pass_criterion": {"operator": ">=", "value": 100, "unit": "mg/L", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability": {"assay": "DSF_Tm", "protocol_id": "sample-stability-guard.v1", "value": 66.9, "unit": "degC", "pass_criterion": {"operator": ">=", "value": 65.0, "unit": "degC", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"}
      }
    },
    {
      "case_id": "BF-RES-118",
      "candidate_id": "BF-118",
      "observed_failure": {"assay": "HIC", "protocol_id": "sample-hic-protocol.v1", "value": null, "unit": "min", "evidence_class": "UNSUPPORTED", "failure_criterion": {"operator": ">", "value": 11.0, "unit": "min", "evidence_class": "CONVENTIONAL"}, "confidence": "MISSING_VALUE"},
      "guard_assays": {
        "binding": {"assay": "SPR_KD", "protocol_id": "sample-binding-guard.v1", "value": 3.7, "unit": "nM", "pass_criterion": {"operator": "<=", "value": 5.0, "unit": "nM", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "expression": {"assay": "transient_expression_titer", "protocol_id": "sample-expression-guard.v1", "value": 118, "unit": "mg/L", "pass_criterion": {"operator": ">=", "value": 100, "unit": "mg/L", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability": {"assay": "DSF_Tm", "protocol_id": "sample-stability-guard.v1", "value": 67.4, "unit": "degC", "pass_criterion": {"operator": ">=", "value": 65.0, "unit": "degC", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"}
      }
    },
    {
      "case_id": "BF-RES-903",
      "candidate_id": "BF-903",
      "observed_failure": {"assay": "SPR_KD", "protocol_id": "sample-spr-protocol.v1", "value": 45.0, "unit": "nM", "evidence_class": "EMPIRICAL", "failure_criterion": {"operator": ">", "value": 10.0, "unit": "nM", "evidence_class": "CONVENTIONAL"}, "confidence": "CONFIRMED"},
      "guard_assays": {
        "binding": {"assay": "SPR_KD", "protocol_id": "sample-binding-guard.v1", "value": 45.0, "unit": "nM", "pass_criterion": {"operator": "<=", "value": 5.0, "unit": "nM", "evidence_class": "CONVENTIONAL"}, "state": "FAIL", "evidence_class": "EMPIRICAL"},
        "expression": {"assay": "transient_expression_titer", "protocol_id": "sample-expression-guard.v1", "value": 121, "unit": "mg/L", "pass_criterion": {"operator": ">=", "value": 100, "unit": "mg/L", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"},
        "stability": {"assay": "DSF_Tm", "protocol_id": "sample-stability-guard.v1", "value": 66.2, "unit": "degC", "pass_criterion": {"operator": ">=", "value": 65.0, "unit": "degC", "evidence_class": "CONVENTIONAL"}, "state": "PASS", "evidence_class": "EMPIRICAL"}
      }
    }
  ],
  "assay_context": {
    "buffer": {"pH": 6.0, "ionic_strength_mM": 150, "formulation": "phosphate buffered saline"},
    "concentration_mg_mL": 1.0,
    "temperature_C": 25
  },
  "engineering_constraints": {
    "protected_residues": [
      {"chain": "H", "positions": [33, 50, 52], "reason": "affinity critical"}
    ],
    "protected_motifs": [],
    "allowed_mutation_regions": ["H3", "L3"],
    "allowed_mutation_positions": {"H": [99, 100, 101, 102, 103, 104, 105], "L": [94, 95]},
    "maximum_substitutions_per_proposal": 1,
    "cdr_mutation_policy": "ALLOW_WITH_BINDING_GUARD",
    "binding_or_potency_measurement_commitment": {"accepted": true, "assay": "buyer_binding_or_potency_assay"},
    "preserve_canonical_cysteines": true,
    "preserve_disulfides": true,
    "forbidden_amino_acids": [],
    "forbidden_motifs": ["NXS", "NXT"]
  }
}
Rescue responseZero to three proposals and every state
Routes, exhaustive legal counts, proposal deltas, requirements, falsifiers
{
  "contract_version": "antibody.rescue.v1",
  "request_id": "req_rescue_example_024",
  "sample": true,
  "case_results": [
    {
      "case_id": "BF-RES-401",
      "candidate_id": "BF-018",
      "observed_failure": {"assay": "HIC", "protocol_id": "sample-hic-protocol.v1", "value": 14.6, "unit": "min", "evidence_class": "EMPIRICAL", "threshold": 11.0, "threshold_evidence_class": "CONVENTIONAL"},
      "routed_axis": "hydrophobic_surface_drive",
      "applicability": {"state": "APPLICABLE", "reason": "observed_HIC_failure_matches_route"},
      "uncertainty": {"state": "MODERATE", "drivers": ["assay_mapping_uncertainty"]},
      "legal_search": {
        "enumeration": "ALL_CANONICAL_SINGLE_SUBSTITUTIONS",
        "sequence_lengths": {"VH": 120, "VL": 107, "total": 227},
        "canonical_alternatives_per_position": 19,
        "enumerated_count": 4313,
        "complete_legal_substitution_table": {
          "representation": "LOSSLESS_CARTESIAN_MINUS_EXPLICIT_REJECTIONS",
          "positions": [
            {"chain": "H", "position": 99, "parent": "W"},
            {"chain": "H", "position": 100, "parent": "G"},
            {"chain": "H", "position": 101, "parent": "G"},
            {"chain": "H", "position": 102, "parent": "W"},
            {"chain": "H", "position": 103, "parent": "G"},
            {"chain": "H", "position": 104, "parent": "F"},
            {"chain": "H", "position": 105, "parent": "W"},
            {"chain": "L", "position": 94, "parent": "F"},
            {"chain": "L", "position": 95, "parent": "P"}
          ],
          "canonical_residues": ["A", "C", "D", "E", "F", "G", "H", "I", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y"],
          "exclude_parent_residue": true,
          "ordering": ["chain", "position", "mutant_residue"],
          "candidate_row_count": 171,
          "excluded_rows": [
            {"row": "L:F94S", "reason": "forbidden_sequon"},
            {"row": "L:F94T", "reason": "forbidden_sequon"},
            {"row": "L:P95N", "reason": "forbidden_sequon"}
          ],
          "row_count": 168
        },
        "hard_rejection_summary": {"outside_allowed_positions": 4142, "protected_positions": 0, "canonical_cysteines": 0, "required_disulfides": 0, "forbidden_residues_or_motifs": 3},
        "legal_mutation_count": 168,
        "non_dominated_count": 3,
        "proposal_membership": [
          {"proposal_id": "BF-RES-401-P1", "legal_row": "H:W99Y"},
          {"proposal_id": "BF-RES-401-P2", "legal_row": "H:W99S"},
          {"proposal_id": "BF-RES-401-P3", "legal_row": "L:F94Y"}
        ]
      },
      "state": "PROPOSE",
      "proposals": [
        {
          "proposal_id": "BF-RES-401-P1",
          "recommendation_role": "PRIMARY",
          "decision": {"state": "PROPOSE", "reason": "non_dominated_primary_tradeoff"},
          "edit": {"chain": "H", "position": 99, "from": "W", "to": "Y", "region": "H3"},
          "responsible_residues": ["H:W99"],
          "parent_vector": {
            "hydrophobic_surface_drive": {"value": 24.9, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.0, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "mutant_vector": {
            "hydrophobic_surface_drive": {"value": 20.7, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.03, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "delta_vector": {
            "hydrophobic_surface_drive": {"value": -4.2, "unit": "kJ/mol", "direction": "DESIRED", "evidence_class": "DERIVED"},
            "charge_state": {"value": 0.0, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"added": [], "removed": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.03, "unit": "dimensionless", "evidence_class": "EMPIRICAL", "direction_of_desirability": "higher_is_better", "tradeoff": "DESIRED"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL"}
          },
          "component_coverage": {"positive_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE", "negative_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE"},
          "hard_guards": {"protected_positions": "PASS", "disulfides": "PASS", "forbidden_motifs": "PASS"},
          "new_liabilities": [],
          "binding_guard_required": true,
          "required_binding_assay": "buyer_binding_or_potency_assay",
          "applicability": {"state": "APPLICABLE", "out_of_domain": false},
          "uncertainty": {"state": "MODERATE", "drivers": ["assay_mapping_uncertainty"]},
          "observation_model": {"assay": "HIC", "mapping_version": "hic.observation.v1", "conditions": "pH_6.0_ionic_strength_150_mM", "expected_direction": "lower_retention", "evidence_class": "FITTED"},
          "decision_policy": {"version": "rescue.policy.v1", "pareto_status": "NON_DOMINATED"},
          "provenance": {"parent_candidate_id": "BF-018", "structure_source": "sample-buyer-model-BF-018", "mutation_engine_version": "single-substitution.v1"},
          "falsifier": "H:W99Y does not move paired HIC lower than the parent or fails a declared binding, stability, charge, chemistry, disulfide, or protected-position guard.",
          "decision_trace": ["observed_HIC_failure_routed", "4313_single_substitutions_enumerated", "168_legal_edits", "hard_guards_pass", "non_dominated", "binding_guard_required", "propose"]
        },
        {
          "proposal_id": "BF-RES-401-P2",
          "recommendation_role": "ALTERNATIVE",
          "decision": {"state": "PROPOSE", "reason": "non_dominated_alternative_tradeoff"},
          "edit": {"chain": "H", "position": 99, "from": "W", "to": "S", "region": "H3"},
          "responsible_residues": ["H:W99"],
          "parent_vector": {
            "hydrophobic_surface_drive": {"value": 24.9, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.0, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "mutant_vector": {
            "hydrophobic_surface_drive": {"value": 18.1, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": -0.11, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "delta_vector": {
            "hydrophobic_surface_drive": {"value": -6.8, "unit": "kJ/mol", "direction": "DESIRED", "evidence_class": "DERIVED"},
            "charge_state": {"value": 0.0, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"added": [], "removed": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": -0.11, "unit": "dimensionless", "evidence_class": "EMPIRICAL", "direction_of_desirability": "higher_is_better", "tradeoff": "ADVERSE"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL"}
          },
          "component_coverage": {"positive_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE", "negative_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE"},
          "hard_guards": {"protected_positions": "PASS", "disulfides": "PASS", "forbidden_motifs": "PASS"},
          "new_liabilities": [],
          "binding_guard_required": true,
          "required_binding_assay": "buyer_binding_or_potency_assay",
          "applicability": {"state": "APPLICABLE", "out_of_domain": false},
          "uncertainty": {"state": "MODERATE", "drivers": ["assay_mapping_uncertainty"]},
          "observation_model": {"assay": "HIC", "mapping_version": "hic.observation.v1", "conditions": "pH_6.0_ionic_strength_150_mM", "expected_direction": "lower_retention", "evidence_class": "FITTED"},
          "decision_policy": {"version": "rescue.policy.v1", "pareto_status": "NON_DOMINATED"},
          "provenance": {"parent_candidate_id": "BF-018", "structure_source": "sample-buyer-model-BF-018", "mutation_engine_version": "single-substitution.v1"},
          "falsifier": "H:W99S does not move paired HIC lower than the parent or fails a declared binding, stability, charge, chemistry, disulfide, or protected-position guard.",
          "decision_trace": ["observed_HIC_failure_routed", "4313_single_substitutions_enumerated", "168_legal_edits", "hard_guards_pass", "non_dominated", "binding_guard_required", "propose"]
        },
        {
          "proposal_id": "BF-RES-401-P3",
          "recommendation_role": "ALTERNATIVE",
          "decision": {"state": "PROPOSE", "reason": "non_dominated_alternative_tradeoff"},
          "edit": {"chain": "L", "position": 94, "from": "F", "to": "Y", "region": "L3"},
          "responsible_residues": ["L:F94"],
          "parent_vector": {
            "hydrophobic_surface_drive": {"value": 24.9, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.0, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "mutant_vector": {
            "hydrophobic_surface_drive": {"value": 21.8, "unit": "kJ/mol", "evidence_class": "DERIVED", "structure_source": "sample-buyer-model-BF-018"},
            "charge_state": {"value": 1.1, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"site_ids": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.08, "unit": "dimensionless", "evidence_class": "EMPIRICAL"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL", "structure_source": "sample-buyer-model-BF-018"}
          },
          "delta_vector": {
            "hydrophobic_surface_drive": {"value": -3.1, "unit": "kJ/mol", "direction": "DESIRED", "evidence_class": "DERIVED"},
            "charge_state": {"value": 0.0, "unit": "e", "pH": 6.0, "evidence_class": "DERIVED"},
            "chemical_sites": {"added": [], "removed": [], "evidence_class": "CONVENTIONAL"},
            "stability_guard_sequence": {"value": 0.08, "unit": "dimensionless", "evidence_class": "EMPIRICAL", "direction_of_desirability": "higher_is_better", "tradeoff": "DESIRED"},
            "stability_guard_structure": {"value": 0.0, "unit": "dimensionless", "state": "PASS", "evidence_class": "EMPIRICAL"}
          },
          "component_coverage": {"positive_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE", "negative_charge_texture": "NOT_LICENSED_FOR_HIC_RESCUE"},
          "hard_guards": {"protected_positions": "PASS", "disulfides": "PASS", "forbidden_motifs": "PASS"},
          "new_liabilities": [],
          "binding_guard_required": true,
          "required_binding_assay": "buyer_binding_or_potency_assay",
          "applicability": {"state": "APPLICABLE", "out_of_domain": false},
          "uncertainty": {"state": "MODERATE", "drivers": ["assay_mapping_uncertainty"]},
          "observation_model": {"assay": "HIC", "mapping_version": "hic.observation.v1", "conditions": "pH_6.0_ionic_strength_150_mM", "expected_direction": "lower_retention", "evidence_class": "FITTED"},
          "decision_policy": {"version": "rescue.policy.v1", "pareto_status": "NON_DOMINATED"},
          "provenance": {"parent_candidate_id": "BF-018", "structure_source": "sample-buyer-model-BF-018", "mutation_engine_version": "single-substitution.v1"},
          "falsifier": "L:F94Y does not move paired HIC lower than the parent or fails a declared binding, stability, charge, chemistry, disulfide, or protected-position guard.",
          "decision_trace": ["observed_HIC_failure_routed", "4313_single_substitutions_enumerated", "168_legal_edits", "hard_guards_pass", "non_dominated", "binding_guard_required", "propose"]
        }
      ],
      "validation_controls": [
        {"control_id": "BF-RES-401-C1", "experimental_role": "NEUTRAL_CONTROL", "selection_rule": "legal_single_substitution_with_near_zero_target_delta_and_matched_guard_burden", "paired_assay": "HIC", "counted_as_recommendation": false},
        {"control_id": "BF-RES-401-C2", "experimental_role": "ADVERSE_CONTROL", "selection_rule": "legal_single_substitution_with_opposite_target_delta_and_matched_guard_burden", "paired_assay": "HIC", "counted_as_recommendation": false}
      ],
      "falsifier": "Selected negative target-delta edits fail to outperform matched neutral and adverse controls on paired HIC, or a proposed edit breaches a buyer-defined guard.",
      "decision_trace": ["observed_HIC_failure_routed", "4313_single_substitutions_enumerated", "168_legal_edits", "three_non_dominated_proposals", "matched_controls_attached", "propose"]
    },
    {
      "case_id": "BF-RES-226",
      "candidate_id": "BF-226",
      "observed_failure": {"assay": "MET_OXIDATION", "protocol_id": "sample-oxidation-protocol.v1", "value": 18.0, "unit": "percent", "evidence_class": "EMPIRICAL", "threshold": 10.0, "threshold_evidence_class": "CONVENTIONAL", "named_site": "H:M34"},
      "routed_axis": "chemical_sites",
      "applicability": {"state": "REQUIRES_STRUCTURE", "reason": "shielding_route_needs_structure_context", "out_of_domain": false},
      "uncertainty": {"state": "NOT_ESTIMATED", "drivers": ["structure_not_supplied"]},
      "legal_search": {"enumeration": "NOT_STARTED", "enumerated_count": 0, "legal_mutation_count": 0, "non_dominated_count": 0},
      "state": "NEEDS_STRUCTURE",
      "proposals": [],
      "required_input": {"type": "ADMISSIBLE_STRUCTURE", "reason": "named_site_shielding_requires_exposure_context"},
      "binding_requirement": {"required": false, "reason": "no_proposal_generated"},
      "falsifier": "A supplied admissible structure does not resolve site exposure or yields no legal guarded edit.",
      "decision_trace": ["oxidation_failure_routed", "structure_required", "search_not_started", "needs_structure"]
    },
    {
      "case_id": "BF-RES-118",
      "candidate_id": "BF-118",
      "observed_failure": {"assay": "HIC", "protocol_id": "sample-hic-protocol.v1", "value": null, "unit": "min", "evidence_class": "UNSUPPORTED", "threshold": 11.0, "threshold_evidence_class": "CONVENTIONAL"},
      "routed_axis": null,
      "applicability": {"state": "MISSING_ASSAY", "reason": "observed_value_absent", "out_of_domain": false},
      "uncertainty": {"state": "NOT_ESTIMATED", "drivers": ["observed_value_absent"]},
      "legal_search": {"enumeration": "NOT_STARTED", "enumerated_count": 0, "legal_mutation_count": 0, "non_dominated_count": 0},
      "state": "NEEDS_ASSAY",
      "proposals": [],
      "required_assay": {"assay": "HIC", "protocol_id": "sample-hic-protocol.v1", "reason": "observed_value_absent"},
      "binding_requirement": {"required": false, "reason": "no_proposal_generated"},
      "falsifier": "A completed assay does not meet the declared failure criterion.",
      "decision_trace": ["observed_value_absent", "search_not_started", "assay_requested", "needs_assay"]
    },
    {
      "case_id": "BF-RES-903",
      "candidate_id": "BF-903",
      "observed_failure": {"assay": "SPR_KD", "protocol_id": "sample-spr-protocol.v1", "value": 45.0, "unit": "nM", "evidence_class": "EMPIRICAL", "threshold": 10.0, "threshold_evidence_class": "CONVENTIONAL"},
      "routed_axis": null,
      "applicability": {"state": "OUT_OF_SCOPE", "reason": "affinity_loss_not_modeled", "out_of_domain": true},
      "uncertainty": {"state": "NOT_ESTIMATED", "drivers": ["unsupported_failure_axis"]},
      "legal_search": {"enumeration": "NOT_STARTED", "enumerated_count": 0, "legal_mutation_count": 0, "non_dominated_count": 0},
      "state": "ABSTAIN",
      "proposals": [],
      "binding_requirement": {"required": true, "assay": "buyer_affinity_model_or_experiment", "reason": "affinity_failure"},
      "falsifier": "No rescue statement is made for this failure class without a buyer affinity model or experiment.",
      "decision_trace": ["affinity_failure_identified", "failure_axis_out_of_scope", "search_not_started", "abstain"]
    }
  ],
  "provenance": {
    "engine_version": "biofold-antibody-1.0.0",
    "physical_object_version": "physical-vector.v1",
    "observation_versions": ["hic.observation.v1", "chemical-site.observation.v1"],
    "mutation_engine_version": "single-substitution.v1",
    "policy_version": "rescue.policy.v1",
    "hash_scope": {"input": "sha256_of_UTF8_JSON.stringify_request", "output": "sha256_of_UTF8_JSON.stringify_response_omitting_provenance.output_hash_and_provenance.served_at"},
    "input_hash": "sha256:9c67d5c9f59724d49f548c19300c7c2a52b87db91fb37478941df5e2038cb6e6",
    "output_hash": "sha256:1bf17c92f0d99b3c80f089f48319a7637f3db95bdebc370ce84e96a4cb135422",
    "served_at": "2026-07-10T12:05:00Z"
  }
}

Decision trace and evidence architecture

Each decision record includes its evidence and policy trace.

Physical outputs, assay observations, and buyer policy remain separately versioned. A policy change never rewrites a molecular value, and an assay update never changes a hard constraint.

01

Request identity

Library, candidate, lineage, paired chain hashes, assay protocol, buyer constraints, and missing-value policy.

02

Validity and hard gates

Sequence validity, chain mapping, protected residues, disulfides, forbidden amino acids, and forbidden motifs.

03

Applicability

Coverage, required structure, assay-condition match, out-of-distribution state, uncertainty drivers, and abstention reason.

04

Physical vector

Named quantities, units, responsible residues, assumptions, component versions, and complete mutant recomputation.

05

Assay observation

Mapping version, applicable cohort and conditions, direction, estimate when licensed, uncertainty, and source record.

06

Decision policy

Pareto tier, declared tie-break, budget, lineage cap, diversity contribution, state, and deterministic reason.

07

Rescue search

Observed failure route, complete single-substitution count, legal count, hard rejections, and non-dominated set.

08

Experimental handoff

Target and guard deltas, new liabilities, binding requirement, matched controls, falsifier, policy hash, and output hash.

Physical status

Definition, unit, assumptions, responsible residues, component version

Observation status

Assay mapping, cohort, conditions, direction, uncertainty, version

Policy status

Hard gates, Pareto tier, tie-break, diversity rule, decision reason

Applicability

Coverage, structural requirements, out-of-distribution state, abstention

Intervention record

Enumerated count, legal count, full mutant vector, dominated alternatives

Guard record

Charge, chemistry, stability, protected positions, binding requirement

Provenance

Request ID, engine and policy versions, input hash, output hash, served time

Falsification

Matched controls, failure criterion, expected observation, stop condition

Define the decision your next round must support.

Start with a paired VH/VL library, the assay protocol, synthesis budget, protected positions, and the decision criteria your team already uses.

BioFold returns the shortlist, the failure routes, the legal rescue set, the experimental guards, and a shareable decision trace.