blog: Electric Circuits — turn any database query live#4728
Merged
Conversation
Adds the electric-ivm blog post covering the experimental DBSP-based rebuild of Electric: incremental view maintenance, the WAL tailer / query engine / fan-out split, subquery membership as a small always-on circuit, server-side aggregations, and measured memory results. Also adds a Demos page entry for LinearLite + the pipeline visualizer (no hosted instance — points at the repository and the blog post) and the post's diagrams/header image. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TUR6dod9Qxvp6qCGnW7W6V
✅ Deploy Preview for electric-next ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Remove the "Rebuilding Electric on DBSP and Durable Streams" (electric-ivm) post and its assets, and add the published "Introducing Electric Circuits" post: DBSP/Z-sets explainer, the subquery-pipeline worked example with a house-style dark diagram, the WAL-to-client path, and a neon banner. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The demo linked to /blog/2026/07/14/electric-ivm, which was removed; VitePress fails the build on the dead link. Point it at the replacement post /blog/2026/07/17/electric-circuits (frontmatter blog_post_url + inline link). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Benchmarks section: confirms the memory model's three claims with the 2026-07-21 shape-memory matrix runs (registration-only and fully materialized), rendered by a new MemoryMatrixChart component (grouped bars, Chart.js, same pattern as StorageComparisonChart). - The-query-becomes-a-circuit pass: Z-set/delta and stateless/stateful operator paragraphs tightened; move-in/move-out paragraph added and echoed in Circuits-hold-no-rows; shape API links. - subquery-pipeline.svg: sink box says "live query" instead of shape/s16. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S64JGwWvFfTEsc8mTngNy5
… CTA rewrite - Benchmarks: charts placed at their explanation, claim order leads with memory-vs-data, honest note on the 7-9 KiB registration cost, Roaring bitmap link, informative chart titles. - IVM lede disambiguated (re-run vs apply); research-preview callout and Try it now rewritten around the clone-and-run CTA. - Move-in/move-out paragraph, state de-duplication section, Z-set and operator paragraphs tightened. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S64JGwWvFfTEsc8mTngNy5
…ial pass - New title: "Electric Circuits: turn any database query live". - "Live context for the agent loop" section written: agent context = own history + domain database, both live via circuits; dynamic and expressive queries as requirements (context window budget, no over-sync). - Code-verified corrections: move-out also runs the indexed Postgres query (deletes gated by the per-query key bitmap); de-dup stated per query family instead of exact counts; materialized run scoped to the visibility queries. - Editorial pass applied (vocabulary, typos, repetitions); "Building on established foundations" removed; aggregation-sharing sentence restored; declare -> register; frontmatter description/excerpt updated; chart subtitles cleaned. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S64JGwWvFfTEsc8mTngNy5
…manual edits
- "circuit visualizer" used consistently across all five mentions.
- Try it now: repaired lead sentence, closing line added ("your app's
queries are already written").
- Materialized chart subtitle simplified.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S64JGwWvFfTEsc8mTngNy5
…n polish - New architecture diagram (Postgres -> replication tailer -> circuits -> Durable Streams) and updated circuit diagram: theme cyan #75fbfd, OpenSauceOne embedded, white text, arch inner shapes white. - Demo videos embedded: membership flip (move-in/move-out) and circuit visualizer, looping, with posters; captions centered with margin. - Electric Circuits section: replication/streams named in the flow, DBSP moved to the IVM lineage paragraph; TanStack paragraph removed. - Benchmarks: single chart, memory-model intro made self-contained; bounded/materialized cuts; Roaring bitmaps in Circuits-hold-no-rows. - curl examples: single /shapes endpoint, no header, "select" field; Try it now lead and closing tightened. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S64JGwWvFfTEsc8mTngNy5
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
samwillis
approved these changes
Jul 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the blog post covering the experimental DBSP-based rebuild of Electric — incremental view maintenance, the WAL tailer / query engine / fan-out split, subquery membership served by a small always-on circuit, server-side aggregations, and measured memory results (flat resident memory as live shapes scale, bounded by what's distinct rather than by data size).
Also adds:
sync/demos/electric-ivm-linearlite.md). No hosted instance — it points at the repository (to clone and run) and the blog post, perDemoCTAs.vue's no-deployed_urlpath.architecture-v5-subquery.svg.Only these 5 files are included — this branch's working tree had a number of unrelated in-progress changes (sync-service test files, agent package tarballs, another draft blog post) that are intentionally left out of this PR.
Test plan
<DemoCTAs>/<VPButton>components.balegas/electric-ivm) as primary, with the demos page as a preview/secondary link.🤖 Generated with Claude Code
https://claude.ai/code/session_01TUR6dod9Qxvp6qCGnW7W6V