renkin 0.59.0 → 0.61.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -5
- package/package.json +1 -1
- package/renkin_bg.wasm +0 -0
package/README.md
CHANGED
|
@@ -47,7 +47,7 @@ npm install renkin # JavaScript (browser / bundler -- see docs/api/wasm
|
|
|
47
47
|
|
|
48
48
|
Auditing Syntheseus routes needs one more, optional package:
|
|
49
49
|
`pip install renkin[syntheseus]` (verified against Syntheseus `0.7.2` and
|
|
50
|
-
`0.8.0`
|
|
50
|
+
`0.8.0`).
|
|
51
51
|
|
|
52
52
|
---
|
|
53
53
|
|
|
@@ -73,6 +73,11 @@ report = json.loads(
|
|
|
73
73
|
print(report["summary"])
|
|
74
74
|
```
|
|
75
75
|
|
|
76
|
+
For an evidence-boundary report, add `--chemical-review` to
|
|
77
|
+
`renkin audit-route ... --output json`. The optional report is deterministic;
|
|
78
|
+
missing conditions, selectivity, and substrate-scope evidence remain
|
|
79
|
+
`not_evaluable`. See the [chemical review rubric](https://kent-tokyo.github.io/renkin/guides/chemical-review-rubric/).
|
|
80
|
+
|
|
76
81
|
**Syntheseus** (`pip install renkin[syntheseus]`)
|
|
77
82
|
|
|
78
83
|
```python
|
|
@@ -568,7 +573,7 @@ The JSON output includes `avg_nodes_expanded`, `avg_confidence`, `avg_convergenc
|
|
|
568
573
|
to Stage 2 only when Stage 1 finds no route; the response reports the selected
|
|
569
574
|
stage, timeout status, and per-stage elapsed time.
|
|
570
575
|
|
|
571
|
-
The server auto-detects `data/building_blocks.smi` and `data/templates_extracted_5000.smi` in the working directory. Falls back to the embedded `DEFAULT_BUILDING_BLOCKS` / `default_rules()` defaults if not found (152 unique building blocks per `ChemEnv::bb_count()`,
|
|
576
|
+
The server auto-detects `data/building_blocks.smi` and `data/templates_extracted_5000.smi` in the working directory. Falls back to the embedded `DEFAULT_BUILDING_BLOCKS` / `default_rules()` defaults if not found (152 unique building blocks per `ChemEnv::bb_count()`, 22 handcrafted rules, including the new graph-based `carbamate_cleavage` rule).
|
|
572
577
|
|
|
573
578
|
```bash
|
|
574
579
|
cargo build --release
|
|
@@ -670,7 +675,7 @@ renkin/ ← Cargo workspace root
|
|
|
670
675
|
├── scripts/
|
|
671
676
|
│ ├── extract_templates.py # rdchiral template extraction pipeline
|
|
672
677
|
│ ├── run_benchmark_chunks.sh # resumable chunked benchmark runner
|
|
673
|
-
│ ├── train_reranker.py # candidate reranker training/evaluation (dev tool, offline only
|
|
678
|
+
│ ├── train_reranker.py # candidate reranker training/evaluation (dev tool, offline only)
|
|
674
679
|
│ └── tests/ # unittest suite for train_reranker.py
|
|
675
680
|
├── docs/ # MkDocs source → kent-tokyo.github.io/renkin/
|
|
676
681
|
└── mkdocs.yml
|
|
@@ -695,7 +700,7 @@ see "Earlier milestones" below for older shipped work.
|
|
|
695
700
|
- [x] Coverage mode (`--search-mode coverage`, [#101](https://github.com/kent-tokyo/renkin/issues/101), shipped v0.24.0) — opt-in Stage-1/Stage-2 template-count escalation, addressing the candidate-generation coverage gap below. Confirmed by a one-shot 500-target formal-TEST (`data/coverage_mode_formal_test/protocol_v2.md`): coverage +6.0pp, net gain +30, zero regressions, zero reranker failures, Stage-2 timeout rate 0.25% — all against pre-registered thresholds. See the Key Features table above for the shipped surface
|
|
696
701
|
- [x] Reranker made actually usable: Python exposure (`find_routes()`'s `reranker_model_path`/`reranker_freq_table_path`) and batteries-included model distribution (`scripts/fetch_reranker_model.py`, SHA-256-verified fetch from the v0.22.0 GitHub Release's canonical assets) ([#101](https://github.com/kent-tokyo/renkin/issues/101), shipped v0.23.0) — v0.22.0 proved the reranker works; v0.23.0 is the usability/distribution unlock, not a new accuracy claim
|
|
697
702
|
- [x] LightGBM candidate reranker, trained/gated offline and wired into route search ([#101](https://github.com/kent-tokyo/renkin/issues/101) Task 35, CLI shipped v0.22.0) — LambdaMART model trained on real USPTO-50k labels, passed its VAL screening gate (top1 +11.7pp, MRR +11.3pp, top10 +9.3pp, bootstrap-CI-confirmed) and a formal 4,903-target TEST evaluation against the frozen model exactly once (top1 +12.7pp, MRR +11.9pp, top10 +9.1pp — consistent magnitude with VAL, no overfitting signal), then wired into `find_routes` as an ordering-only rank bonus and confirmed with a paired 100-target route-search gate: `route_to_configured_stock` 16→20/100 (+4/-0). See the Key Features table above
|
|
698
|
-
- [x] Formal 500-target RENKIN vs AiZynthFinder comparison ([#66](https://github.com/kent-tokyo/renkin/issues/66)) — under a fixed 500-target sample, shared 393-compound stock, and each tool's configured policy/budget, RENKIN Conservative's `route_to_shared_stock` outcome was 9.8 percentage points higher than AiZynthFinder's (73/500 vs 24/500
|
|
703
|
+
- [x] Formal 500-target RENKIN vs AiZynthFinder comparison ([#66](https://github.com/kent-tokyo/renkin/issues/66)) — under a fixed 500-target sample, shared 393-compound stock, and each tool's configured policy/budget, RENKIN Conservative's `route_to_shared_stock` outcome was 9.8 percentage points higher than AiZynthFinder's (73/500 vs 24/500). This is a protocol-specific paired result, not a general search-capability superiority claim; native-mode configurations use unmatched stocks and are not directly comparable.
|
|
699
704
|
- [x] Ring-context safety guard for extracted templates ([#72](https://github.com/kent-tokyo/renkin/issues/72)/[#242](https://github.com/kent-tokyo/renkin/pull/242)) — opt-in `--ring-context-policy`/`--ring-context-sidecar`, catches extracted templates silently misapplying a ring-opening/closing disconnection their training data never saw; default remains `disabled` (unchanged legacy behavior)
|
|
700
705
|
- [x] `atom_economy` no longer silently clamped to 100% when a route's represented precursor set can't account for the target's full mass ([#79](https://github.com/kent-tokyo/renkin/issues/79)) — a new `atom_economy_status` field (`normal`/`above_expected_range`/`not_evaluable`) reports this explicitly instead
|
|
701
706
|
|
|
@@ -707,7 +712,8 @@ see "Earlier milestones" below for older shipped work.
|
|
|
707
712
|
|
|
708
713
|
### Next
|
|
709
714
|
|
|
710
|
-
- [
|
|
715
|
+
- [x] Graph rule expansion — sulfonamide and carbamate cleavage (one PR per family, with structural and atom-accounting gates; carbamate shipped v0.61.0)
|
|
716
|
+
- [ ] Urea cleavage — define and validate an atom-balanced disconnection before adding a default rule
|
|
711
717
|
- [ ] Stock-aware planning (price / hazard / availability re-ranking)
|
|
712
718
|
|
|
713
719
|
<details>
|
package/package.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"kent-tokyo <kent-tokyo@users.noreply.github.com>"
|
|
6
6
|
],
|
|
7
7
|
"description": "Ultra-fast retrosynthesis engine for computer-aided synthesis planning (CASP) — pure Rust, WASM-ready, Python bindings via PyO3",
|
|
8
|
-
"version": "0.
|
|
8
|
+
"version": "0.61.0",
|
|
9
9
|
"license": "MIT",
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
package/renkin_bg.wasm
CHANGED
|
Binary file
|