DOC-6763 investigate automating binder notebook creation#3531
DOC-6763 investigate automating binder notebook creation#3531andy-stark-redis merged 17 commits into
Conversation
|
|
🛡️ Jit Security Scan Results✅ No security findings were detected in this PR
Security scan by Jit
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 49c9bde. Configure here.
|
|
||
| res40 = r.vset().vdim("setReduced") # >>> 100 | ||
| print(res40) | ||
| # STEP_END |
There was a problem hiding this comment.
Vecset example missing assert coverage
Low Severity
The new vecset example’s add_quant REMOVE block only asserts res31, and the final add_reduce step has no REMOVE block at all. demo.test.ipynb verification can pass while vemb results or dimension-reduction behavior are wrong.
Reviewed by Cursor Bugbot for commit 49c9bde. Configure here.
|
Thanks @dwdougherty ! |


This is a first step in automating Binder notebook creation directly from the examples. So far, the main result is a set of improvements to the deterministic
jupyterizetool, so it still requires some manually directed AI effort to add the notebooks. A side benefit is that we've now got two new Python notebooks for time series and vector sets.The hope is that this will eventually become fully automated, perhaps with human review of the final notebooks as a check.
Note
Medium Risk
New automation touches external binder-launchers clones, Docker execution, and CI gates; kernel-name fixes affect all regenerated Node/Go notebooks. Work is marked WIP but correctness of sync/verify behavior matters for published Binder environments.
Overview
Extends jupyterize into an end-to-end path from docs examples to binder-launchers branches: ship notebooks (
demo.ipynb) plus assert-bearing test notebooks (demo.test.ipynb), with local and CI verification before deploy.Generation & parsing: New
--with-testskeepsREMOVEblocks as cells taggedtest(nestedREMOVEhandled by depth). Notebooks get deterministiccell{i}ids. Kernel names inconfig.pyalign with real Binder images: Nodejslab, Gogonb.Unwrapping: Orphan trailing
}from class/method wrappers split across cells are stripped via brace-aware logic (strings/comments ignored), with new tests.New tooling:
verify.pyruns a generated test notebook in the pinned base image (Redis + kernel or Python script mode).sync_notebook.pyreadsBINDER_ID, jupyterizes both notebooks into the matching branch, runsverify.pyas a pre-check, upgrades verify-gated GitHub workflow /.dockerignore, and optionally commits/pushes. Documents Node/Go kernel limitations injs-notebook-findings.md.Examples: Adds redis-py doctest sources for time series (
python-dt-timeseries) and vector sets (python-dt-vector-set) with step markers and asserts for the pipeline.Reviewed by Cursor Bugbot for commit 49c9bde. Bugbot is set up for automated code reviews on this repo. Configure here.