OpenCloning / OpenCloning/OpenCloning_frontend

Handle assembly edge case

Open
#236 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
4
Forks
10
Avg merge
11d 9h
Merged PRs (30d)
3

Description

Documented in examples/example_insertion_vs_circle.py

In an insertion assembly, when the two homology regions overlap, the same assembly could be interpreted as a circular one.

In the picture below, we could have:

  1. An insertion where the bottom sequence gets inserted into the top
  2. A circularisation of the bottom one, with the top acting as a "bridge"

This bridge thing could be not supported, but I suppose it can actually be quite useful for something like a gibson assembly.

Supporting this two cases makes it necessary to have the parameter is_insertion in assemble. Passing the same fragment twice for the insertion assembly would solve the problem and turned into a pydantic object, since the fragment representation would start with None and end with None locations, if the ids are the same it could be inferred that it's an insertion.

WhatsApp Image 2024-09-18 at 13 09 30

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with examples/example_insertion_vs_circle.py and the assemble entry point described in the issue. Compare the insertion and circularisation cases when homology regions overlap, then determine how is_insertion, repeated fragments, and the proposed pydantic representation should distinguish them; done means both interpretations are supported or the bridge case is explicitly rejected.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.