Fine-Grained Lineage for Safer Notebook Interactions
Stephen Macke, Aditya G. Parameswaran, Hongpu Gong, Doris Jung Lin Lee, Doris Xin, Andrew Head
Abstract
Computational notebooks have emerged as the platform of choice for data science and analytical workflows, enabling rapid iteration and exploration. By keeping intermediate program state in memory and segmenting units of execution into so-called "cells", notebooks allow users to execute their workflows interactively and enjoy particularly tight feedback. However, as cells are added, removed, reordered, and rerun, this hidden intermediate state accumulates in a way that is not necessarily correlated with the notebook's visible code, making execution behavior difficult to reason about, and leading to errors and lack of reproducibility. We present , a custom Jupyter kernel that uses runtime tracing and static analysis to automatically manage lineage associated with cell execution and global notebook state. detects and prevents errors that users make during unaided notebook interactions, all while preserving the flexibility of existing notebook semantics. We evaluate 's ability to prevent erroneous interactions by replaying and analyzing 666 real notebook sessions. Of these, identified 117 sessions with potential safety errors, and in the remaining 549 sessions, the cells that identified as resolving safety issues were more than 7× more likely to be selected by users for re-execution compared to a random baseline, even though the users were not using and were therefore not influenced by its suggestions.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers7
- LIMA: Fine-grained Lineage Tracing and Reuse in Machine Learning SystemsArnab Phani, Benjamin Rath, Matthias BoehmSIGMOD 2021 · 30 citations
- ElasticNotebook: Enabling Live Migration for Computational NotebooksZhaoheng Li, Pranav Gor, Rahul Prabhu, Hui Yu et al.VLDB 2024 · 12 citations
- Kishu: Time-Traveling for Computational NotebooksZhaoheng Li, Supawit Chockchowwat, Areet Sheth, Yongjoo Park et al.VLDB 2025 · 11 citations
- CHEX: Multiversion Replay with Ordered CheckpointsNaga Nithin Manne, Shilvi Satpati, Tanu Malik, Amitabha Bagchi et al.VLDB 2022 · 9 citations
- Pagebreaks: Multi-Cell Scopes in Computational NotebooksEric Rawn, Sarah E. ChasinsCHI 2025 · 4 citations
Builds on4
- What's Wrong with Computational Notebooks? Pain Points, Needs, and Design OpportunitiesSouti Chattopadhyay, Ishita Prasad, Austin Z. Henley, Anita Sarma et al.CHI 2020 · 162 citations
- Auto-Suggest: Learning-to-Recommend Data Preparation Steps Using Data Science NotebooksCong Yan, Yeye HeSIGMOD 2020 · 64 citations
- SQLCheck: Automated Detection and Diagnosis of SQL Anti-PatternsPrashanth Dintyala, Arpit Narechania, Joy ArulrajSIGMOD 2020 · 26 citations
- Aggify: Lifting the Curse of Cursor Loops using Custom AggregatesSurabhi Gupta, Sanket Purandare, Karthik RamachandraSIGMOD 2020 · 22 citations
Related papers
- Bolt-on, Compact, and Rapid Program Slicing for Notebooks [Scalable Data Science]Shreya Shankar, Stephen Macke, Sarah E. Chasins, Andrew Head et al.VLDB 2022 · 17 citations
- Assessing and Restoring Reproducibility of Jupyter NotebooksJiawei Wang, Tzu-yang Kuo, Li Li, Andreas ZellerASE 2020 · 68 citations
- Tidynote: Always-Clear Notebook AuthoringRuanqianqian (Lisa) Huang, Brian Hempel, Yining Cao, James D. Hollan et al.CHI 2026 · 1 citation
- Multiverse Notebook: Shifting Data Scientists to Time TravelersShigeyuki Sato, Tomoki NakamaruOOPSLA 2024 · 3 citations
- NoteFlow: Leveraging Charts as Sight Glasses for Consistent and Continuous Data Flow TracingYuan Tian, Dazhen Deng, Sen Yang, Huawei Zheng et al.CHI 2026 · 1 citation
