Releases: felizvida/genomeforge
Genome Forge v0.1.17
Genome Forge v0.1.17
Released: 2026-06-15
Highlights
- Added compatibility audit reports for FASTA, GenBank, SBOL, and portable Genome Forge DNA round trips.
- Added a five-case golden project audit for SnapGene/Geneious-style migration trust.
- Added SBOL conversion support through
/api/convert-record. - Added UI reporting for imported-cleanly, warnings, lost metadata, export-safe, and needs-review outcomes.
- Expanded the training book to 47 cases with a compatibility round-trip trust lesson.
Validation
- 63 unit tests
- 122 smoke checks
- 113 real-world functional workflow steps
- 17 browser E2E tests
- 120 documented
/api/*endpoints plusGET /share/<share_id>
Genome Forge v0.1.16
Genome Forge v0.1.16
This release adds the first NGS-lite replacement-phase workflow: FASTQ QC, adapter/quality trimming, lightweight read mapping, simple variant evidence, and a one-click workflow report for small amplicon or construct-verification read sets.
Highlights
- Added
POST /api/fastq-qcfor read counts, length distribution, GC, Q20/Q30, per-base quality, and adapter detection. - Added
POST /api/fastq-trimfor deterministic adapter and quality trimming with retained/dropped read audit rows. - Added
POST /api/ngs-map-readsfor local read-to-reference mapping, coverage, consensus, zero-coverage regions, read-level mapping rows, and high-support variant evidence. - Added
POST /api/ngs-workflow-reportfor QC -> trimming -> mapping -> expected/unexpected variant checks and replacement-phase status. - Added an NGS Lite browser tab and evidence report panel.
- Expanded the self-study book to 46 cases with Case AT, "NGS-Lite Amplicon Evidence Report."
Validation
make quality PYTHON=./.venv-docs/bin/python3./.venv-docs/bin/python3 -m unittest discover -s tests -p 'test_*.py'./.venv-docs/bin/python3 smoke_test.py./.venv-docs/bin/python3 real_world_functional_test.pynpm run test:e2egit diff --check
Baseline
- Unit tests:
57/57 - Smoke checks:
119/119 - Real-world workflow steps:
110/110 - Browser E2E tests:
16/16 - API inventory:
118documented/api/*endpoints plusGET /share/<share_id>
Genome Forge v0.1.15
Genome Forge v0.1.15
Release date: 2026-06-15
Highlights
- Added Geneious-inspired similarity annotation transfer for known parts in new constructs.
- Added multi-read Sanger consensus with variants, disagreements, expected genotype checks, and final verdicts.
- Updated the tutorial/book, case bundles, API docs, and feature-priority notes around these workflows.
- Hardened audit findings around no-coverage genotype calls and zero-coverage annotation transfer.
Geneious-Inspired Workflows
Genome Forge now covers two high-value bench workflows commonly expected from polished sequence-analysis tools:
POST /api/annotation-transfermaps annotated reference features onto a target construct by sequence similarity, reporting identity, feature coverage, source record, and target coordinates before optionally adding features.POST /api/sanger-consensuscombines trace IDs, trace records, or read sequences into a consensus, then separates expected variants from unexpected sequence changes.
Both workflows are available from the browser UI and are covered by deterministic EGFP/pUC19 tests.
Audit Fixes
- Expected Sanger genotype positions with no read coverage now fail the verdict instead of treating an ambiguous
Nas confirmation. - Annotation transfer now rejects features with no mapped bases before coordinate projection, including when exploratory thresholds are set to zero.
- The generated training book now points Case R and Case Z to the actual new workflow buttons.
Validation
make quality PYTHON=./.venv-docs/bin/python3./.venv-docs/bin/python3 -m unittest discover -s tests -p 'test_*.py'./.venv-docs/bin/python3 smoke_test.py./.venv-docs/bin/python3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
53/53 - Smoke checks:
115/115 - Real-world functional checks:
106/106 - Browser E2E tests:
15/15
Notes
- This release expands the current API inventory to
114documented/api/*endpoints plusGET /share/<share_id>. - Historical release archives under
dist/remain local artifacts unless explicitly published.
Genome Forge v0.1.14
Genome Forge v0.1.14
Release date: 2026-05-15
Highlights
- Added a configurable JSON POST body limit to the local web server.
- Oversized requests now fail before body reads with HTTP
413and a clear configured-limit error. - Added
--max-post-mbfor trusted local workflows that intentionally need larger records or bundles. - Updated security, install, architecture, API, developer, README, and handoff docs to describe the request-size boundary.
Request-Size Safety
Genome Forge remains a local-first workstation app, but local tools can still be asked to process malformed or accidentally huge payloads. The server now validates Content-Length before reading the request body.
Default cap:
64 MiB
Override for trusted local workloads:
python3 web_ui.py --port 8080 --max-post-mb 128Invalid Content-Length values return HTTP 400; oversized bodies return HTTP 413.
Validation
python3 docs/validate_docs.pypython3 -m py_compile web_ui.py tests/test_web_ui_security.py docs/validate_docs.pypython3 -m unittest tests.test_web_ui_security -vpython3 -m unittest discover -s tests -p 'test_*.py'./.venv-docs/bin/python -m pytestpython3 smoke_test.pypython3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
48/48 - Smoke checks:
115/115 - Real-world functional checks:
104/104 - Browser E2E tests:
15/15
Notes
- This is a focused local-server resilience release following
v0.1.13. - Genome Forge still does not claim hosted SaaS isolation, authenticated browser sessions, or regulated electronic-records compliance.
Genome Forge v0.1.13
Genome Forge v0.1.13
Release date: 2026-05-15
Highlights
- Added an explicit safety gate for non-loopback web UI binding.
- Kept normal workstation use unchanged:
python3 web_ui.py --port 8080still binds to127.0.0.1. - Required
--allow-remotebefore accepting hosts such as0.0.0.0. - Updated security, install, architecture, API, developer, and README docs to explain the local-first bind model.
- Stabilized browser workflow tests so repeated UI actions wait for fresh output instead of accepting stale responses.
Bind Safety
Genome Forge is a local-first workstation app. Starting the server on a network-facing address now requires an explicit acknowledgement:
python3 web_ui.py --host 0.0.0.0 --port 8080 --allow-remoteWithout --allow-remote, non-loopback hosts fail fast with a clear error. This reduces accidental exposure on lab or public networks while preserving an intentional opt-in path for trusted environments.
Validation
python3 docs/validate_docs.pypython3 -m py_compile web_ui.py tests/test_web_ui_security.py docs/validate_docs.pypython3 -m unittest tests.test_web_ui_security -vpython3 -m unittest discover -s tests -p 'test_*.py'./.venv-docs/bin/python -m pytestpython3 smoke_test.pypython3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
44/44 - Smoke checks:
115/115 - Real-world functional checks:
104/104 - Browser E2E tests:
15/15
Notes
- This is a focused local-server safety release following
v0.1.12. - Genome Forge still does not claim hosted SaaS isolation, authenticated browser sessions, or regulated electronic-records compliance.
Genome Forge v0.1.12
Genome Forge v0.1.12
Release date: 2026-05-15
Highlights
- Added defense-in-depth security headers to the local HTTP server.
- Added a documented local-first security model for workstation/lab usage.
- Added integration tests that verify root-page and API responses emit the expected browser security boundary.
Security Headers
The local server now sends:
Content-Security-PolicyX-Content-Type-Options: nosniffX-Frame-Options: DENYReferrer-Policy: no-referrerCross-Origin-Opener-Policy: same-originPermissions-Policy
The CSP keeps scripts local with script-src 'self', blocks object/frame embedding, and keeps network calls local with connect-src 'self'.
Validation
python3 docs/validate_docs.pypython3 -m py_compile web_ui.py tests/test_web_ui_security.py docs/validate_docs.pyfor f in webui/js/*.js; do node --check "$f" || exit 1; done./.venv-docs/bin/python -m pytestpython3 -m unittest discover -s tests -p 'test_*.py'python3 smoke_test.pypython3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
41/41 - Smoke checks:
115/115 - Real-world functional checks:
104/104 - Browser E2E tests:
15/15
Notes
- This is a focused local-server hardening release following
v0.1.11. - Genome Forge remains a local-first workstation app, not a production multi-tenant hosted service.
Genome Forge v0.1.11
Genome Forge v0.1.11
Release date: 2026-05-15
Highlights
- Added a browser-side SVG allowlist sanitizer for server-generated visual panels before DOM insertion.
- Routed map, sequence track, MSA heatmap, sequence analytics, comparison lens, trace chromatogram, and project history SVG rendering through the sanitizer.
- Escaped the remaining enzyme labels in server-rendered map SVG attributes and text.
- Added browser regression coverage that verifies active SVG content, event attributes, unsafe links, and unsafe URL paint values are stripped before rendering.
Validation
python3 docs/validate_docs.pypython3 -m py_compile genomeforge_toolkit.pyfor f in webui/js/*.js; do node --check "$f" || exit 1; done./.venv-docs/bin/python -m pytestpython3 -m unittest discover -s tests -p 'test_*.py'python3 smoke_test.pypython3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
39/39 - Smoke checks:
115/115 - Real-world functional checks:
104/104 - Browser E2E tests:
15/15
Notes
- This is a focused hardening release following
v0.1.10. - Local source archives and SHA-256 checksums are included for reproducible handoff.
Genome Forge v0.1.10
Genome Forge v0.1.10
Release date: 2026-05-15
Highlights
- Added in-app Learning Mode for guided flagship workflows.
- Added evidence-to-decision cards that translate workflow outputs into biological inference, confidence limits, and next bench actions.
- Expanded the tutorial into a 45-case self-study textbook with exact UI walkthroughs, glossary cards, evidence/inference checkpoints, bench decision cards, common wrong interpretations, and lab-chief prompts.
- Hardened SVG interaction handling so minimap and pan/zoom gestures use scoped pointer-event listeners instead of brittle global handler assignment.
- Added an embedded favicon to remove browser console noise during local UI testing.
- Tightened documentation validation so README, npm package metadata, Python package metadata, tutorial structure, and release markers stay synchronized.
Validation
python3 docs/tutorial/generate_tutorial.py./.venv-docs/bin/python docs/build_tutorial_pdf.pypython3 docs/validate_docs.pypython3 -m py_compile backend/project_api.py collab/store.py docs/tutorial/generate_tutorial.py docs/validate_docs.py docs/tutorial/datasets/extract_case_bundle.py docs/build_tutorial_pdf.pynode --check webui/js/ui-core.js && node --check webui/js/workflows-core.js && node --check webui/js/workflows-analysis.js && node --check webui/js/workflows-search.js && node --check webui/js/workflows-projects.js && node --check webui/js/app.jspython3 -m unittest discover -s tests -p 'test_*.py'python3 smoke_test.pypython3 real_world_functional_test.pynpm run test:e2egit diff --check
Validation Snapshot
- Unit tests:
37/37 - Smoke checks:
115/115 - Real-world functional checks:
104/104 - Browser E2E tests:
14/14
Notes
- Tutorial PDF remains a US Letter print-oriented edition.
- This release supersedes the already-published
v0.1.9tag rather than force-moving it.
Genome Forge v0.1.9
Genome Forge v0.1.9
Release date: 2026-04-29
Highlights
- Retitled the tutorial to Teach Yourself DNA Bioinformatics with Genome Forge to match the DNA-centered scope of the course.
- Expanded the tutorial to 45 lessons with ApE-inspired DNA workflows:
- diagnostic cutter selection between related constructs
- custom DNA ladder-centric digest planning
- dense text-map sequence inspection
- silent restriction-site engineering
- linked trace-to-reference navigation
- selected-sequence external BLAST launch
- Added publication-quality concept illustrations for diagnostic digests, silent-site engineering, and trace evidence review.
- Rebuilt the tutorial PDF as a US Letter, duplex-oriented print edition with a designed front cover, inside front cover, mirrored gutters, and an even-page back cover.
- Regenerated tutorial HTML, PDF, dataset metadata, playbook, and per-case bundles.
Validation
python3 docs/tutorial/generate_tutorial.py./.venv-docs/bin/python docs/build_tutorial_pdf.pypython3 docs/validate_docs.pypython3 -m py_compile docs/tutorial/generate_tutorial.py docs/validate_docs.py docs/tutorial/datasets/extract_case_bundle.py docs/build_tutorial_pdf.pypdfinfo docs/tutorial/user_training_tutorial.pdfgit diff --check
Notes
- The PDF reports US Letter geometry:
612 x 792 pts. - The release includes source archives and SHA-256 checksums for reproducible handoff.
- The older untracked local
dist/genomeforge-v0.1.4throughv0.1.8artifacts were left untouched.
Genome Forge v0.1.8
Genome Forge v0.1.8
Release date: 2026-04-27
Highlights
- Hardened collaboration trust boundaries around project permissions, review approval, and audit history.
- Escaped public share-page metadata so stored project names cannot inject HTML into shared views.
- Preserved minimap interactivity while avoiding global mouse-handler clobbering during rerenders.
- Refined the tutorial into a more polished textbook-style edition and regenerated both HTML and PDF artifacts.
Validation
python3 -m py_compile backend/project_api.py collab/store.py docs/tutorial/generate_tutorial.py docs/build_tutorial_pdf.pypython3 -m unittest discover -s tests -p 'test_*.py'python3 smoke_test.pypython3 real_world_functional_test.pypython3 docs/tutorial/generate_tutorial.pypython3 docs/validate_docs.py./.venv-docs/bin/python docs/build_tutorial_pdf.pynpm run test:e2egit diff --check
Notes
- The release includes source archives and SHA-256 checksums for reproducible handoff.
- The local PDF build may emit non-fatal
fontconfigcache warnings on this workstation; the generated PDF artifact is still written successfully.