You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 77bfa6f
Browse filesBrowse the repository at this point in the historyBrowse files
[act.dirac.Ω.D8+] one semantic substrate now governs every Dirac surface
The architecture could not be completed piecemeal because ObjectRef, Command, Job, cache, SDK, AppShell and actor provenance are one dependency chain: leaving any adapter outside would preserve a second scientific API. This commit intentionally lands that vertical substrate together, while keeping unimplemented workspaces gated. It also records the two false assumptions found during verification: path routing needs both static-server fallback and a root base URL, and MCP parity is a command-to-Job flow rather than a private method tool.
**Dirac is the open-source, browser-native upgrade of Schrödinger's commercial molecular design suite.** Every feature must make a medicinal chemist more effective at single-molecule design — perceiving chemistry, exploring conformations, evaluating drug-likeness — without install, license, or backend.
4
-
5
-
## We do pursue
6
-
7
-
-**Single-molecule depth over multi-molecule breadth.** One ligand, fully characterized, beats a thousand ligands superficially.
8
-
-**Browser-native.** WASM computes everything that can be computed; Python is escalation, not baseline.
9
-
-**Orthogonal visual channels.** Color, geometry, label, and halo each carry one piece of chemistry information. They never compete.
10
-
-**mol\* as engine, RDKit as cheminformatics, our code as the design surface.**
11
-
12
-
## We do NOT pursue (non-goals)
13
-
14
-
-**Multi-molecule SAR databases.** That is Schrödinger LiveDesign's whole-product scope; we are the per-molecule complement.
15
-
-**Protein engineering / mutation effect prediction.** Different domain (FoldX / Rosetta), different audience.
16
-
-**Molecular dynamics simulation.** We visualize MD results if you bring them; we do not run MD.
17
-
-**FEP / ΔΔG computation.** We will visualize FEP networks if you bring the data; we will not fake the numbers.
18
-
-**Backend-dependent features disguised as client-only.** If a feature needs a server, the UI says so explicitly.
19
-
20
-
## Why these non-goals
21
-
22
-
Scope creep is the dominant failure mode for visualization tools. Every "we should also do X" halves the chance that any single feature becomes excellent. The non-goals above are the recurring temptations that would dilute Dirac's identity.
23
-
24
-
## When in doubt
25
-
26
-
If a new feature request does not advance "a medicinal chemist more effective at single-molecule design in the browser without backend", it does not belong in Dirac. Open an issue, tag it `[scope-challenge]`, and argue for it explicitly.
3
+
**Dirac is a headless-capable scientific application platform whose GUI, CLI, SDK,
4
+
MCP and agents are projections over the same scientific objects, commands, evidence
5
+
and durable computation.**
6
+
7
+
The scientist sees eight stable workspaces: Programs, Design, Structures, Campaigns,
8
+
Synthesis, Experiments, Knowledge and Runs. The system underneath remains simple:
9
+
canonical identity, one scientific context, semantic commands, versioned methods,
10
+
durable Jobs, content-addressed artifacts, typed provenance and controlled relations.
11
+
12
+
## We pursue
13
+
14
+
- scientist-facing workflows that connect intent, computation, evidence and decisions;
15
+
- mol* as one persistent 3D scene and RDKit as the chemistry substrate;
16
+
- browser-native interaction with honest backend escalation for real scientific compute;
17
+
- one command surface shared by human and agent actors;
18
+
- exact method identity, reproducible artifacts and explicit uncertainty;
19
+
- additive Workspaces and modules over stable application contracts.
20
+
21
+
## Invariants
22
+
23
+
- No adapter or Workspace invents private scientific semantics.
24
+
- No result is current without its Method identity and provenance.
25
+
- Long compute creates a durable Job.
26
+
- A scientific object has one canonical `ObjectRef`.
27
+
- ScientificContextStore owns focus, selection and stale-result rejection.
28
+
- Mission, Run and Job remain distinct.
29
+
- Agents use the same commands and objects as humans; autonomy changes policy, not API.
30
+
- Unimplemented or unsupported capability is gated or refused, never simulated as real.
31
+
32
+
## Scope discipline
33
+
34
+
Do not build eight disconnected products or horizontally fill empty screens. Extend the
35
+
platform in dependency order: domain object → method if computation is needed → semantic
36
+
command → durable state and provenance → SDK/UI projection → safe agent projection.
Copy file name to clipboardExpand all lines: README.md
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,12 +4,13 @@
4
4
5
5

6
6
7
-
**Where things stand:**[`STATUS.md`](STATUS.md) — what is built, and what is a seam
8
-
with nothing writing to it yet. [`ROADMAP.md`](ROADMAP.md) — how these seams reach an
9
-
AI-native scientific OS without a rewrite, and the seven changes that would break
10
-
that path. Not deployed: no auth, no public URL, three hand-started processes.
7
+
**Where things stand:**[`STATUS.md`](STATUS.md) records live evidence;
8
+
[`ARCHITECTURE.md`](ARCHITECTURE.md) describes the current platform boundaries; and
the product architecture. The local supervised deployment has no authentication and is
11
+
not a public multi-user service.
11
12
12
-
Schrödinger's Maestro / LiveDesign stack is the commercial state-of-the-art for structure-based molecular design. It is closed, expensive, and desktop-native. **Dirac is the open-source, browser-native answer** — built on the [mol\*](https://github.com/molstar/molstar) 3D engine and the [RDKit-JS](https://github.com/rdkit/rdkit-js) cheminformatics runtime, with every computation happening in the browser via WebAssembly. No license server, no install, no Python backend required for the core workflow.
13
+
Schrödinger's Maestro / LiveDesign stack is the commercial state-of-the-art for structure-based molecular design. It is closed, expensive, and desktop-native. **Dirac is the open-source, browser-native answer** — built on the [mol\*](https://github.com/molstar/molstar) 3D engine and the [RDKit-JS](https://github.com/rdkit/rdkit-js) cheminformatics runtime. Interactive perception stays in-browser; real 3D embedding and scientific computation use the optional local Python service through the same command, Job, artifact and provenance contracts.
13
14
14
15
The name is intentional. In physics, Schrödinger's equation describes matter at non-relativistic energies; Dirac's equation is its upgrade to the relativistic regime, predicting spin, antimatter, and the fine structure of hydrogen. **Dirac the project aims to be that kind of upgrade over Schrödinger the product** — same domain, deeper formulation, open and accessible.
15
16
@@ -34,9 +35,10 @@ Dirac is **one integrated app** with multiple facets, all sharing the same mol\*
34
35
| <imgsrc="docs/screenshots/04_designer_pharmacophore.png"width="320"alt="Designer facet: pharmacophore feature list and 3D glyphs"> |**Designer** — Pharmacophore Designer feature list auto-derived from the ligand (2 HBA, 1 HBD, 19 hydrophobic points), each with an editable radius, shown in the 3D pocket. |
35
36
| <imgsrc="docs/screenshots/05_ops_console.png"width="320"alt="Ops console reading the live field backend snapshot"> |**Ops console** — live read of `/admin/snapshot` from the field backend: 0 jobs running, field-cache health (68 rows, 291.6 MB across 5 field kinds), and the stale-sweep reclaim list. |
36
37
37
-
### Optional fields backend
38
+
### Optional scientific application service
38
39
39
-
The core workflow stays 100% in-browser. The **Fields** facet is the one exception by design — real SCF does not belong in wasm. It talks to a local daemon that turns the focused ligand's molfile into Gaussian-cube scalar fields (already in scene coordinates):
40
+
The browser can explore bundled examples without a backend. Real embedding, fields,
41
+
surface MEP and torsion analysis use the unified local application service:
The atom-index contract is the load-bearing seam: ligand loci iteration order is preserved through molfile construction, RDKit parsing, SMARTS predicates, 2D SVG generation, and 3D click-back selection. Every layer uses the same walker.
0 commit comments