Skip to content

Initial release - #1

Merged
kevindetry-milaboratories merged 1 commit into
mainfrom
kevindetry/MILAB-6358
Jul 24, 2026
Merged

kevindetry-milaboratories merged 1 commit into
mainfrom
kevindetry/MILAB-6358

Conversation

@kevindetry-milaboratories

@kevindetry-milaboratories kevindetry-milaboratories commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Greptile Summary

Initial release of an end-to-end generation-probability block.

  • Adds a Python/OLGA scoring service that reads clonotypes from Parquet and computes raw and −log10 generation probabilities in parallel.
  • Adds Tengo workflows that discover CDR3 and chain columns, invoke the scoring service, and export scored PFrames.
  • Adds model outputs and Vue pages for dataset/species selection, tabular results, progress reporting, skipped-chain warnings, and probability distributions.
  • Adds package metadata, dependencies, release notes, and user-facing documentation.
  • Important touched terms:
    • Pgen (generation probability): Probability that V(D)J recombination generates a given CDR3; introduced as the primary computed value and exported column.
    • −log10(Pgen): Log-transformed rarity score where larger values indicate rarer CDR3s; introduced as a companion output.
    • CDR3: Receptor sequence region scored by OLGA; workflow discovery now supports VDJ clonotype and variant sequence namespaces.
    • Chain: Immunoglobulin or T-cell receptor locus associated with a CDR3; used to select the appropriate recombination model.
    • Species: Organism whose recombination model is used; introduced as a required human-or-mouse setting.
    • Alphabet: Amino-acid or nucleotide representation of a CDR3; inferred from dataset metadata and passed to the scorer.
    • PFrame: Platforma columnar frame carrying scored results; introduced for table, graph, and export outputs.
    • OLGA: Library that evaluates generation probability using learned recombination models; added as the scoring engine.

Confidence Score: 5/5

The pull request appears safe to merge with no concrete blocking or independently actionable non-blocking defects identified.

The implemented model, workflow, scorer, and UI form a consistent data path from selected repertoire columns through OLGA scoring to tabular, graphical, and exported results.

Important Files Changed

Filename Overview
software/src/main.py Implements validated Parquet input handling, model selection, parallel OLGA scoring, transformed scores, and progress reporting.
workflow/src/main.tpl.tengo Resolves dataset key and alphabet metadata, invokes the scoring workflow, and publishes cached outputs.
workflow/src/score.tpl.tengo Discovers scoreable CDR3/chain units for bulk and single-cell datasets and constructs the scoring input.
workflow/src/pgen-process.tpl.tengo Executes the Python scorer with bounded resources and converts its result into display and export PFrames.
model/src/index.ts Defines block state, input discovery, workflow arguments, tables, graph frames, progress, and navigation.
ui/src/pages/MainPage.vue Adds dataset/species settings, scored-result table, and unsupported-chain feedback.
ui/src/pages/DistributionPage.vue Adds a histogram view over generated raw Pgen columns.

Sequence Diagram

sequenceDiagram
    participant U as User
    participant UI as Vue UI
    participant M as Block Model
    participant W as Tengo Workflow
    participant P as Python/OLGA
    U->>UI: Select dataset and species
    UI->>M: Persist block arguments
    M->>W: Run with anchor and species
    W->>W: Discover CDR3 and chain columns
    W->>P: Score Parquet input
    P-->>W: Result Parquet and progress
    W-->>M: PFrame outputs
    M-->>UI: Table, histogram, warnings
Loading

Reviews (1): Last reviewed commit: "Initial release" | Re-trigger Greptile

@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@kevindetry-milaboratories
kevindetry-milaboratories merged commit 1026dfe into main Jul 24, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant