Drop editor in favor of ord-app#172
Conversation
The Flask-based editor under ord_interface/editor/ has been replaced by the standalone ord-app (https://app.open-reaction-database.org). This removes the editor and everything that existed only to support it. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- nginx: 301 /editor and /editor/* to https://app.open-reaction-database.org/ so existing bookmarks land on the new editor instead of a blank SPA shell. - CI: bump test_app runner from ubuntu-22.04 to ubuntu-latest now that the puppeteer-incompatibility note no longer applies. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
@skearnes - yes we should do this to clean up the code, but I hesitate to rip the old editor out of the production instance without communicating a clear timeline for the user community to remove any important data. The latest statement we have made on the old editor is from the announcement of the new editor here https://www.linkedin.com/pulse/next-generation-reaction-editor-here-open-reaction-database-tfste. |
There was a problem hiding this comment.
My understanding is that this 'about' file no longer needed since the website uses this file (https://github.com/open-reaction-database/ord-interface/blob/8731895b44a960f0448a72042fa9981df2846c22/app/src/views/About.vue) instead for the about page.
bdeadman
left a comment
There was a problem hiding this comment.
Happy to approve the code changes as they are, but I'd like to have a conversation about how we manage the retirement of the legacy editor from the production instance.
- Drop the placeholder "How to Deploy" section. - Fix the project layout: api/ is the FastAPI server (not /client), and the description was missing it entirely. Mark editor/ as legacy (being removed in #172). - Tighten setup instructions and folder descriptions; trim filler. - Flag the host-port 5432 collision for `docker compose up`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Remove stale config and accidental commits - .pylintrc, .style.yapf: legacy linter/formatter configs replaced by ruff in #173. - copilot/: AWS Copilot CLI manifest, replaced by Pulumi/ECS in the ord-infrastructure repository. - dump.rdb: accidentally committed Redis snapshot. - README.md, CONTRIBUTING.md: setup.py / pip install instructions rewritten in terms of uv now that #173 has landed. - .gitignore: add .pytest_cache/, .ruff_cache/, .venv/, dump.rdb so these stop showing up in future working trees. Editor-tree `# pylint:` / `# pytype:` comments are intentionally left alone; the editor is excluded from ruff/ty and is being removed in #172. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Refresh README - Drop the placeholder "How to Deploy" section. - Fix the project layout: api/ is the FastAPI server (not /client), and the description was missing it entirely. Mark editor/ as legacy (being removed in #172). - Tighten setup instructions and folder descriptions; trim filler. - Flag the host-port 5432 collision for `docker compose up`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Apply review feedback on cleanup PR - CONTRIBUTING.md: sweep remaining `ord-schema` references to `ord-interface` (title, issue-tracker URLs, fork instructions). The goals/non-goals readthedocs link is left as-is and rephrased to point at "the broader Open Reaction Database" so it's clear the reference is intentional. - README.md: add a brief Deployment section pointing at the ord-infrastructure repo (Pulumi/ECS) now that the old "How to Deploy" placeholder is gone. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * .gitignore: add trailing slashes to directory-only patterns Make the pre-existing directory patterns consistent with the new ones added in this branch (`.pytest_cache/`, `.ruff_cache/`, `.venv/`) and the already-slashed ones above (`.idea/`, `docs/_build/`, `.vscode/`). Trailing slash restricts a pattern to match directories only, which is what we actually want for `__pycache__`, `*.egg-info`, `.ipynb_checkpoints`, `build`, `dist`, `ketcher`, `standalone`, `node_modules`, and `coverage`. A future file accidentally named one of these wouldn't be silently ignored. `**/.pnp` is left as-is because Yarn 2+ uses `.pnp.cjs` files while Yarn 1 used a `.pnp` directory; the un-slashed form matches both. Verified `git check-ignore` still resolves the existing `.venv/`, `ord_interface.egg-info/`, `ord_interface/__pycache__/` directories through the new rules. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
ord_interface/editor/— its job is now handled by the standalone ord-app, which theContributelink in the Vue header already points to.interface.pyFlask entrypoint, theflaskupstream +/editor/location in nginx, the flask gunicorn worker, the closure-library/protoc/closure-compiler/jquery-externs build chain in the Dockerfile, the editor schema/migrate step inbuild_test_database.sh, thenode editor/js/test.jsJS tests, the--ignore=ord_interface/editorpytest flag and puppeteer install in CI, and theflask/pygithubdeps insetup.py.app/src/views/contribute/Vue views (already not wired into the router) and the orphaned staticabout.html(Vue'sAbout.vueserves/about)./editor/healthcheckto/, drops the now-unusedGH_CLIENT_ID/GH_CLIENT_SECRETsecrets there and indocker-compose.yml.301from/editor(and/editor/*) tohttps://app.open-reaction-database.org/so old bookmarks land on the new editor instead of a blank SPA shell.test_appCI runner fromubuntu-22.04toubuntu-latestnow that puppeteer is gone.dump.rdbRedis dump from the repo root and adds it to.gitignore.Follow-ups (out of scope for this PR)
/copilot/ord-editor/secrets/(GH_CLIENT_ID,GH_CLIENT_SECRET) and the GitHub OAuth app behind them./to a FastAPI route (e.g./api/datasets) so a backend outage actually fails the health check; currently/is green even if FastAPI is down.Test plan
./run_tests.shbuilds the slimmed-down image and the pytest suite passes — verified locally, 39/39 passed/run/fastapi.sockexists; gunicorn runsord_interface.api.main:apponly/browse,/search,/about,/ketcherall work — all return HTTP 200 via nginxContributelink still points toapp.open-reaction-database.org— confirmed atapp/src/components/HeaderNav.vue:39/returns 200 — confirmed viacurl -I http://localhost:8080//editor,/editor/,/editor/foo,/editor/healthcheckall return301 → https://app.open-reaction-database.org/;/editorxfalls through to the SPA🤖 Generated with Claude Code