feat: Streaming Diff Oven (agent-agnostic, ported onto main)#8
Merged
Conversation
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
apresmoi
force-pushed
the
feat/streaming-diff-core
branch
from
July 15, 2026 11:05
003049a to
95ebf3d
Compare
…nstall per review Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
… binary consistency Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
…e 18 CI) Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
…eview) Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
…ock reclaim (review) Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
…updates (review) Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
…the directory-lock (review) Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
Co-authored-by: Agustin Capeletto <174887634+alowpoly@users.noreply.github.com>
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.
Builds on @alowpoly's #5 and the design we worked out in that thread. Ports the Streaming Diff Oven onto current
mainand makes capture agent-agnostic (Codex + Claude Code). Opened as a separate PR only because #5's branch is far behind on the old layout; co-authored with @alowpoly.What it does
Watch an agent edit your repo, live. Hooks bracket each file-mutating tool call and publish a timestamped, per-session diff feed into git-ignored
.local/; the dashboard streams it over SSE.agent edit -> pre/post hook -> burnlist streaming-diff capture -> .local feed -> dashboard (SSE)Key decisions
.local/atomically; the dashboard is a read-only observer.git diff HEAD), so pre-existing dirty changes are never misattributed to the tool.partial, never a falsecaptured..env, ignored,.git/, and symlink escapes are never captured; secret patterns are redacted before any write.watchdropped.Install
burnlist hooks install --agent codex,claudemerges hooks into.codex/hooks.json+.claude/settings.json(agent-specific events, capability check, all-or-nothing).Verification
npm run verifyis green (414 tests) on Node 18/20/22, including HTTP/SSE integration and a socketless synthetic acceptance test. Therepo-statecross-process lock was also redesigned into a directory-lock primitive to close crash-recovery races and de-flake Node 18 CI.Please poke holes, especially at: pre-to-post attribution, the read-only-observer boundary, the content/redaction policy, and the Codex/Claude adapter payload mapping.