Skip to content

Product architecture

Bijux Proteomics separates six responsibilities that are often compressed into one pipeline: stable data meaning, scientific computation, execution control, evidence memory, decision policy, and experimental consequence. The separation makes a result replayable and makes disagreements localizable.

Data and decision flow

flowchart TD
    inputs["scientific inputs\nFASTA · mzML · spectra · search tables"]
    foundation["foundation\nidentity · schemas · canonical serialization"]
    core["core\nnormalize · identify · quantify · review"]
    request["benchmark asset bundle\nworkflow request + acceptance contract"]
    runtime["runtime\nexecute · checkpoint · resume · replay"]
    run["runtime run bundle\nmanifest + artifacts + ledger"]
    knowledge["knowledge\nground · reconcile · assess sufficiency"]
    review["scientific review bundle"]
    intelligence["intelligence\nrank · challenge · recommend or refuse"]
    decision["recommendation record"]
    lab["lab\nplan · gate readiness · observe"]
    outcome["lab consequence record"]

    foundation --> core
    foundation --> runtime
    foundation --> knowledge
    foundation --> intelligence
    foundation --> lab
    inputs --> core --> request --> runtime --> run --> knowledge --> review --> intelligence --> decision --> lab --> outcome
    outcome -. new evidence .-> knowledge

The main path is not required for every use case. Core algorithms can be called directly, knowledge can ground external evidence, and lab can manage a supplied recommendation. The handoff contracts become important when provenance must survive across those independent uses.

Dependency direction and evidence direction

The evidence chain and Python dependency graph solve different problems. The evidence chain can move from a Lab observation back into Knowledge; the import graph must not point from lower-level contracts into higher-level policy.

flowchart LR
    subgraph imports["allowed dependency direction"]
        F1["Foundation"] --> C1["Core"]
        F1 --> K1["Knowledge"]
        F1 --> I1["Intelligence"]
        F1 --> L1["Lab"]
        F1 --> R1["Runtime"]
        C1 --> K1 --> I1 --> L1
        C1 --> R1
    end
    subgraph evidence["record and evidence direction"]
        C2["Core result"] --> R2["Runtime bundle"] --> K2["Knowledge review"]
        K2 --> I2["Intelligence decision"] --> L2["Lab consequence"]
        L2 -. append observation .-> K2
    end

Feedback is expressed through typed records and stable references rather than a reverse import. This preserves historical decisions: a new outcome can create a new review and recommendation without mutating the source run or importing Lab policy into Knowledge.

Cross-boundary need Durable mechanism Coupling to reject
share identity and serialization Foundation contract duplicated identifiers or package-local canonicalization
request execution Core-owned workflow request consumed by Runtime provider logic inside scientific models
ground a result stable result or artifact reference consumed by Knowledge Knowledge importing Runtime state to infer scientific meaning
rank an action versioned evidence bundle consumed by Intelligence Intelligence rewriting claims or source records
return an observation consequence record ingested as new evidence Lab mutating an earlier recommendation in place

Responsibility layers

Stable meaning

bijux-proteomics-foundation supplies identifiers, document-schema metadata, canonical JSON, deterministic fingerprints, compatibility assessment, migrations, and explicit success, failure, and refusal outcomes. It has no dependency on the product packages above it.

Scientific computation

bijux-proteomics-core owns the scientific vocabulary and calculations: sequence and structure models, digestion and chemistry, spectra and mzML, identification and false-discovery review, protein inference, quantification, DIA, PTM, targeted analysis, QC, workflow contracts, and benchmark assets. Its outputs describe scientific computation; they do not claim that a run was operated reproducibly or that a candidate should progress.

Execution control

bijux-proteomics-runtime binds workflow requests to providers and tools. It owns CLI and HTTP entry points, run configuration, preflight, state machines, parallel and streaming execution, checkpoints, resume, replay, artifact integrity, comparison, telemetry, and archive handoff. Runtime records what happened. It does not redefine scientific semantics.

Evidence memory

bijux-proteomics-knowledge connects results to literature, ontologies, biological entities, provenance, contexts, and contradictions. Evidence is stored as reviewable claims rather than flattened into a single confidence number. Reconciliation decisions remain distinguishable from their sources.

Decision policy

bijux-proteomics-intelligence filters and ranks candidates, tests sensitivity, evaluates scenarios and counterfactuals, records regret, and produces a recommendation or refusal. It consumes evidence and execution truth but owns neither. This keeps a policy change from rewriting the evidence history.

Experimental consequence

bijux-proteomics-lab converts an accepted recommendation into assay design, readiness checks, priorities, scheduling, handoff artifacts, and observed outcomes. A planned experiment and an observed result are different records; the latter returns to the evidence layer as new information.

Failure semantics

Failures remain attributable to their layer:

Condition Owning response
incompatible or non-canonical document foundation compatibility failure
invalid sequence, spectrum, threshold, or workflow contract core validation failure
unavailable provider, corrupt artifact, interrupted run runtime failure or resumable state
missing citation context or unresolved contradiction knowledge insufficiency
unstable ranking or unsupported recommendation intelligence downgrade or refusal
infeasible assay or incomplete operational readiness lab refusal

A downstream layer must not erase an upstream failure. It may add context, narrow a claim, or refuse progression.

Reproducibility boundary

Reproducibility has three parts: canonical inputs, recorded execution, and scientific acceptance criteria. Stable serialization alone is insufficient; replay alone is insufficient; and a benchmark score without its dataset and contract is insufficient. The public workflow-family evidence combines all three, then adds grounding, decision, and lab boundaries where those claims extend downstream.

Continue with cross-package ownership for import and handoff rules, workflow families for scientific coverage, or the runtime handbook for execution details.