Skip to content

Liability detections - #1

Merged
xnacly merged 11 commits into
mainfrom
feat/liability-detection-chunk-1
May 21, 2026
Merged

xnacly merged 11 commits into
mainfrom
feat/liability-detection-chunk-1

Conversation

@xnacly

@xnacly xnacly commented May 6, 2026

Copy link
Copy Markdown
Collaborator
  • Unpaired cysteines
  • Deamidation spots
  • N-glycosylation sequons
  • Oxidation-prone residues
  • SASA

xnacly added 7 commits May 6, 2026 09:27
Workflow no longer invokes any Python; the package, hello.py, and the
hello-world-python entrypoint were dead weight after the move to
in-browser PDB analysis. Removes the workspace dep from
workflow/package.json and the entry from pnpm-workspace.yaml; lockfile
regenerated.
11 vitest tests covering ATOM/HETATM/SSBOND parsing, multi-MODEL handling,
and all four liability detectors (positive cases, NG/NS dipeptides, the
X≠P guard for glycosylation sequons, and sequence-numbering gap respect).

test/tsconfig.json loosened (no rootDir, includes ../ui/src) so the
cross-workspace imports of the pure functions typecheck.
CHANGELOG describes actual feature scope; docs/description.md replaces
the template placeholder; block.meta.tags reflect the antibody /
developability domain; PdbLiabilityList drops a leftover negative
marginTop that caused h3/description overlap.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors the project from a generic template into a specialized tool for sequence-based liability detection in antibody structures. It removes the Python software package and various structural visualization components in favor of a streamlined PDB parser and a new liability detection module targeting unpaired cysteines, deamidation hotspots, glycosylation sequons, and oxidation-prone residues. Feedback across all review comments highlights a critical oversight regarding the handling of PDB insertion codes (iCode). The reviewer recommends updating the parser, data types, detection logic, and UI components to include insertion codes to ensure unique residue identification and correct adjacency checks, which are vital for antibody-specific numbering.

Comment thread ui/src/pdb/parser.ts Outdated
Comment thread ui/src/pdb/parser.ts Outdated
Comment thread ui/src/pdb/parser.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/pdb/liabilities.ts Outdated
Comment thread ui/src/components/pdb/PdbLiabilityList.vue Outdated
@xnacly
xnacly marked this pull request as ready for review May 6, 2026 11:06
Python software implements spec R7/R11-R36/R41: SASA via FreeSASA,
motif detection (R16-R20), four-state cysteine classification
(R21-R23), Raybould 2019 / Gordon 2025 surface metrics (R24-R30),
region-aware confidence gating (R34-R36), composite developability
scoring (R41/R41a).

PColumn export route: Python writes parquet + per-column .datainfo,
workflow imports via processWorkdir + :pt.import-dir. Bypasses the
xsv.importFile EPERM trap (PT-in-Docker runs as root, pl-dev's
MakeCacheReadOnly chmod fails on root-owned files).

Model V3 adds numbering scheme + heavy/light chain mapping with a
DataModelBuilder migration chain. UI strips prototype logic, renders
spec-aligned stats panel + two PColumn tables + residue map.
@xnacly
xnacly merged commit a6f6d81 into main May 21, 2026
8 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