fix(sync): allow large git diff manifests#871
Conversation
Raise the sync command's git exec maxBuffer so large vault migrations with multi-megabyte name-status output do not abort with spawnSync git ENOBUFS before the manifest can be processed.
|
Thanks for this contribution — and apologies for the slow triage. We did a full pass over the entire PR backlog. gbrain has moved fast, and the maintainer's larger "cathedral" rewrites have superseded a big share of community PRs: the AI gateway + recipes + user_provided_models system replaced almost all individual provider PRs; #1805 fixed the whole Postgres module-singleton class; #1542 unified the type taxonomy; #1657 the retrieval path; #1802 the doctor; and so on. We're closing this one in that cleanup — either the fix already landed on master, it duplicates another PR or merged change, or it's outside the current merge bar. Where a closed PR carried a genuinely valuable idea, we've recorded it in docs/designs/COMMUNITY_IDEAS.md so nothing good is lost (a few may graduate into TODOs). Please don't read the close as a judgment of the work — thank you for contributing. If you believe the underlying issue is still live on the latest master, reopen with a quick note and we'll take another look. 🙏 |
Summary
git execFileSyncmaxBufferingbrain syncto 128 MiB.spawnSync git ENOBUFSwhile collectinggit diff --name-statusmanifests.Why
Large Obsidian/GBrain syncs can produce multi-megabyte git manifests. The previous 1 MiB Node default buffer fails before sync can process the changed paths.
Test plan
bun run typecheckpassed.bun run typecheckcurrently fails on upstream dependency/type-resolution issues unrelated to this one-line sync buffer change:src/core/import-file.ts: cannot find module@jsquash/avif/decode.jssrc/core/import-file.ts: cannot find moduleexifrNeed help on this PR? Tag
@codesmithwith what you need.