Dashboard › binpatch › Distillation
a662f8ab-4361-4377-9a52-9dd04ec51e09["9e550ca19c38370c496545af63469933","d298eb9b7739cbc4bbbe9b3441f14b86","a2f52b816154a0f10772ca7609c6a4a3","0a8bd5f971d0f1376eaf5cb6b8d352f6","b0ba14415060c4376f85860da8214f77","792338f24c803e3559f7d7fa1fd52d54","56e7fa854ca5d3236ec0d2c44154eacf","8102770b231d12b1aee900fc469ea97a","3486defaa36f532df368571cc125e6d9","2b8c7f8468c0598515a6d93f221b9ec8","661f1aa4488538a66ed76ab39eb614f3","d97c3e0cea377a6f2754cc792891f47a","9a229d49e8308aa93053cb4e89efeb6e","3b348eb79c269cee795c0181ba2d52b9","53b1cfa2080be6827e0e11ba96e1b60b","bc6bc41aa11c346578e2682b138907df","11873484dc9506b32b2ccdf387712959","a796f4e2be5296614d2eac0fc6f0bb1d","eb6e5f3650360ffdeebf214deb5c5a0a","4244db403f6844de768be2c05a455891","83ec8107f3565937dbd55d7898f99004","4594a6fc0f28bc1969ee1cd95a1195ac","c89c552207b3992142e98f2c6f5cbd6e","b23725daefa6f49ca15a91e41e255d09","4d49d249a217c3d374d42b4bdcf7db48","b859b28e15500db084ddb8a2d7ed2e2d","a95225275585e2fa11a55d20184d2ebf","fbb3280c1b7efa6dad08f842ed13dfd6","c5fc573e20f7ec4e8d9144d8efc86cd4","62f5ba353f779f891028a6f7b0ef8223","04c280e5da3e176301f5c5038af80b43","25becb8af3a6b4ba7323b7411205e38d","707b025bed990da3a4c667eba468a141","ffeaea0ab8a6e1a77c6b4a21316d8214","3546aa1d984b6461e5111e52baf06ed9","abb94f1a292be603dce298ec66a5c2d9","62e3616283abdd78ed182c6ec254360c","8ba292392f7fea61370d58bc6d645d4b","87d3680e7987506cffa2cb1072c98174","bca7ebe57bd8785dad4269b2d342a9b8","d306da4dfb69dc297bbe8968e538f1ef","613c2049150ffcdd83e1cc9ae8547520","98e3f401af766a4d135cee2ebf2f6eb6","beeb1fd8279e7d1a2f3cc73913b1fb6b","0be97768e7f912b9cd4dada60e5af95f","e8919631c09d3350cece90f6b55b7092","3fe645c5bb3f14cb44c51793e0594400","4e2d9d5bb75e937d2e574fca3c499ddb","a9efb8be4ce8b34206cad9ac77db1d93","33ccb24cb96047f9546cc2451750ceb4","29ea94724656620efef4b79654ca04ff","6c62301d784df6b033593863e841c626","53bea72f091fb092a91868c7190b7834","4729ce250d661d308ee8606719f07276","cd5511abae0e6ec8680f7bff32a82007","694c7d78ff847fd811c7657b1be2dd00","8c9d6dd98bcb98968c24ad9720eb85ec","1c8b2c7267c42b915475b73ef4658daf","df4ccfd86b2e8834c04bd68ff7444606","659fa6b827900ed5983db5627a6d15a2","52e188c0374c8aba701cab7665518b5b","098fef9fd2ff725aa95044f1402a9e4a","a4cddcfb56774ea8f06ffe89bc97bbdd","2cc083a43600b5c36cb569117b530fba","80b68c4661936284f9c8f4a0abf4d732","8406ea2d536e37f2de968e2ad16a3c62","9a0e01340382451635c0acc806ddfadb","bfd470d5ac2cfc9a4770f6bc81762f9b","cb2b74486de77df4364dde8733048a5a","4bcb895061ae52a2cddc4341a7513ae2","945ca57d0ce61bd3283fe969971b4ad8","60d7f38a3fe6fe38055e326c4bdc7ec2","d2dc030d5c170e49964b44490f8d6467","7711ee013e4cd09c18f4ffd2ab998140","6ee412ea7549cc6809ac3cf3c509b3be","4df163b9c804b349a0eabc8264256afe","8cb24b57cdbf3c1ed26144213af248ea","ce525d15dd595d31080d86cd609a36bd","af82a246ee9babec8a729a899177abc8","d7bcde32932b3a44b997360203c6b12d","a1d3fb157057befb8bc5da4f9ef87d53","89beef2e27d3b0a805c3ec85ce51dc55","996acbebb9f396ff134f2566a8294f2a","ad30dbfba0b03fe82e9956f0fbd89a1e","0f91aac4e8413be4a32aa3e2d721c0e3","23823b450b98d66785213e8187d525cf","a9161a0d5713d43891b5183a69865d43","8d8aa1f04a726ef7fe7b1569e8f79592","d8210f2592775fa9a934ac259c0fcfb1","94ddbbb6236831af38447bb1a0e64bbf","ea09408c9c2283965d54f966d15dc546","ef5c137087eaf4deb32090bf0f5efa09","5bc86104b58c98275c8f1ad0daea616d","f25fd6d8df7d3d5e3b32a968340f4854","76750c4080b50a5a013aea01ddfdd8e4","cdb4a6ada271ae4c070f6bc51bceb7ce","ad453d9cbd869cf4a60737525194fcb4","788b14f54c8b6fa39f57efa85958d08b","2455f94e0367b1d01726f4bd7d4687ca","04e8f178fc4c77263991cba7c9d4883f","5240f2b2613f884f399d2a31a7b2a6fa","5fdf0329c49a94b3dd8d9fba9acab437","03e14d831b07d456b981ac10434e636b","200edc3bfced0d5c234369f5cda0c04e","00e6375c9c49b5609a0ce9680d7c1d7d","32ca8050f6011c4684136dd99b670db6","74fb3a281af90d8892bf461815382c5f","e13622d2d3b02ac20608b5ba1ab76e83","99e2727ade086412f1e1a8f9590a401b","0d92f391afaa2e62276dfbdf2f553d2f","4cc0348d9722f8d9e50ecbd6cf253320","b8f9dc411cb70dfe11775403a17ef3fc","31a130d2770955c5d5ef8936a995a402","37398f5b1a8e7bfc3d41da1e583e7290","645dcd61a5fa96a7f420eaa9cd4dbf30","afe5ea0e724f43399375536fd9c797ca","ce49e535552005519d89bcfec690e06f","88ee7323166758bb1ae090cb89796911","dbb033048bc521bcc5e32ebbb012a120","56e84c7b05c900138a80b49cfbd4cf68","feadba9d5e6c6ec13dcc60a1fc9414ab","8063951737b44f92c0bd95f6159185bf","e7909226c5d0b27e1131e6649f8575a2","3b03d57fc51f6060f0022a232352e092","63380fe4d14610a7653a869b38ee60fe","bdfb51b9c34864fb5ee5d27d5b124d64","5b7bac3fec8421b5413c1287c70ef4d0","aa7cbe3e749d247f89ca3e6ee57500c8","f074f2263c3d5a406d69b235e7f1b6d2","294047fa2278c9d82f54f23858144b85","e1387515b5f3b56b679cf191d18e3896","558950620b763060295c9ec16fb80a83","53a593575c31cd7edcead0596b6ba6a7","d1c09c4c3defb652f93f39607ea6f6f9","e5c33ba4fcdd511ef7d547b8decbeea2","2ef659a5b8031cdcc0c1785d2ea5209c","eba9457e7f0425f0cb06744062e3c959","eca0d45229b7bc5cb71d4da8fed31e2c","2bba87d5c31307a0f986899579a69303","1f14dc58675c303e64512eade467003a","d1f92bbbb5af1ffc822f03ee0906a3e6","808299f1394187f133282a9c17295337","b49c71604d95825d1a1e92b8aa17ad1c","07570bdceb4cb657d7575722e304dafb","01d7704e0c0f1fe49cf7fbf682da4351","5f3a5dad6da10f69e551f3624fb58105","762b3c9c3d5d90aee348e70228bb05c6","e571cc689757eaafaf5add595377ac9a","a13816a85b55cac1af7d2c274998742f","f8917689bc60b60597b8c9242191e66f","d8bf82379e2a5fa7324705236e8010b0","01e972bf7d0685d4f96023e072437120","d3f1b7f4a6df495e02179d74674d3568","c3851f915161b4d78d4bfe40055f0118","b8f0f93a57c3b661dd31cb2881ab892f","6c3b2df377861e1696cd384e4701c895","6c61cddcf1208ab0449a825d48f9689a","82461fcd79972e28df97f1c714951826","861a0fe04c2212e4be371804bb343ab7","8ca459999c533a5831c12552ad387618","f98432a58498724696cff7b56e0e7221","64ba3e9bd8d44492382fca5dc3713d64","b597f49a6f2851d884ba11a23410612a","4b4178fe9f0f901882f432656005f704","3b84b0c6144a0bbc9b228c75d35f3326","f1b8d2a7fe935c62845df1f23c87c6f1","6f7b619b5c8d52f8c24e0cce3d9d08a4","ee91737a2ad24d5ee2cbf1bccdbedd40","52c0dee66007cb9f4b38a0578badbacd","f9953ec5aa4c424dc745f4f3cce42b73","f43f32aa5dbc2f51f9107bc8f8a89d0d","7cd970757b2a3712a9bc393985d1cbfe","2424029a5d11f8fadeb6b6d528136048","c68c068f7a31aef41efda95cdbe70c45","89871ab248e2dd94b18367daf1165806","af194523eca8f49a1f34f89684fe114d","d2aac5f3980366272dd57bf818bc7add","1513781e73594dedb4303a57ee872c33","08378421af909f7fa736064c03bf4172","037e031b479e983d39e1fdb325ee17ab","9418779f2dab6c3c85af34d18b7c9d53","97628514c7500ceb72835300f5f778e4","b4145f4159b59333c581ebc8a72461f1","f610281303309a60bd60512af4163922","c39d5d53da040f5d1897e7e92dc136fc","82aa844e2a88872a3595e1686af96cf8","fbdf5e6ef6bae03b509c98ff5f561bb1","a7e486ae802cf07fd41f8953aec20cc0","1ec8da1bdd234ef0cb2ed21e6cfa4e34","d67930468010515a83d41613f56a83aa","ea8a299abc3ba63eb03eb44a79b846ca","3b6b11f6a9136b0d7f63d94f4173e374","0ea30c69c82ec51c713e68eb84ebb414","213add964c506e4c93ca74f66f02f0c0","fac8f51ee1f9c8069b47bb80a0e88aad","63990938db86c027264ed77df9666a30","0c3fd7c69c7ed2f03ac68673da7e3d06","2f83fc354a5f941432f1dc5b54fa1025","04bafb9c7d80740fefc229a58c049e6c","b9a15b979e4798cb8549a5155b8d8a1b","e443372333856be9b8ae1a8e613444bd","2b808bcdf87ea73ff9e4b6e1ed28071b","56435c3679b5858b02a4845d3f019055","b8b1c5c509b21c89a50921280bd90695","f9f6ecf89d22b0db81d8721248ad0b07","51d7c900ec6da13743cf354e8971b4c2","a74f639b57ca6981b02fdb215c0037f5","46075850442b0e260e66156e32a1520a","6024fb99cde5ff2bcf4aecc7057c7637","63c10bc1d0416217c35086f37a1d12b9","9ff58f282c3238a5207e9a94c0286aae","0a6e3a84436091c0c17452f146727149","04b0524530213630355d5955ac4df090","0c4f3e472474974094853fd435cf0c37","85aa6e785d97bc66fcfc2b993f31359a","43cd5587917e2095db407bc1c9710a7a","86a6a2a87efe8cd3edebac42bdf52c62","53746522bfb23f4cfbc75987aee09687","a7bafa1663dc8193447c550afa9f86b2","57ee589f24ccb5dfaf6fc2f3a89343a1","663563e72ea0a5a0d1ccffc350c55918","d8122f4156422dc1b99a41bf647c79e5","5edc7074d2433916730d525d67c6c32f","3c0690fa5cd99e6abff9b4791220d2db","48bba73587d9b4ddc9543256b3dc4940","c2be7bec0e847216791198d7387a296e","110004b2538ef2d47a4aa2b3900256ad","3a44483771089a7de5fa835dec7d4005","bd34cece4e5f18acbdbbccccbf52c614","015b37fcf0066e962f4f4677f613ae05","d86f2dab806ff319b5fd4f5268ac9ca6","bf4c9b9fcd0cea3cc686dcd649242286","e4bb48b6c2e98e05df87c19a2b5be2f7","be19dbc02830cc0363135b3c4792fdf1","0a920c3abe9c30ee5fd1d9f53e454f2f","9bad022f022eb7a20c416186d12a1398","fcea222d888d34eaecd8a5c6291d7dc2","d3bfda1731856eb2d2af639484b17bf0","e61be600f3a886f5e0f0f7945c55db7c","96b1d656726db53e9e277acfb93e43f3","2e1e6a8302cfda0cbee645b7722cf54e","0c2c71db76ce97470e99144a745fd005","074d21f7e3711b1c1e85ed826f4db01d","b4c831dfaed085b416d0cda02e22ab63","fc901c21f7fc7b9e6450b26fc37af53d","aca1e1c6ee34651856f7b52ecab22dd8","2ccb6dda0ae664981be06954f983b07b","180f4ff046b60422903285ca4d094bb2","99d5bfe11703de5f370c67cb1dc56c88","7969e1aeff0401061f766de2f5e375ad","d58ae000815f2666522f461062d8a637","98465eb9158466cf82f22198c8d61ed6","29ce1fe9ace539d71004ee80b9e56dc0","3b4727ef17e23494a62877fa5a8d11a6","011d5934fc1fba4e7ca8f7efba6ff36f","c4bb47398a6c75573884bb2655bc1396","b47884be8fb06b61ff901021dd75e326","1041a4a931bdfd559912f1d83405909d","bd82f8ade5f8325f0870fa72bef10dc4","81ba0881330ccd2f35f5d5a59f26d17e","8e84444bc2eaa0697c88c6fb8d908274","584a84602b57dd41cd5395395a807192","569edfd12b763627a6e26a33610affb5","dec3a7593a9c5a1ab46bf061d6bd2ae6","81ad12392cddff993d695137700421f1"]
Active work: binpatch website rebuild on branch docs/any-binary-rebrand-v3 in /home/byk/Code/binpatch/website. PR #36 open at https://github.com/BYK/binpatch/pull/36, preview at https://binpatch.p.byk.im/_preview/pr-36/. Branch is mergeable=True, CI green (preview pass, test pass, Build skipping gh-pages deploy).
Branch tip: 1fd5ef0 (polish tabs + remove leaked .lore.md/AGENTS.md). Earlier commits in chronological order on this branch: 269eeb0 (API fix), 291331c (PR preview workflow), 22f9671 (custom domain), f4f8fef/1c15989 (rebrand), 4849026/1997767 (favicon), 17c7470/7ce3272 (rebrand homepage, raw .md endpoint), 8619385 (mermaid integration file create), 97da9cd (mermaid wiring + reorder + flow.svg removal), 590d5df (restore vite override), cdfcc07 (merge origin/main resolving flow.svg conflict), f75850b (trim landing + move flow to github-action), 2545447 (polish tabs — included leaked files), 1fd5ef0 (remove leaked files).
Current iteration address (post-1fd5ef0): User directed 6 outstanding changes at 21:18, captured in todo list:
zlib.createZstdDecompress was added). package.json engines.node is ">=22.5" — over-permissive but still technically valid; should be tightened to ">=22.15.0". Code uses createZstdDecompress + zstdDecompressSync from node:zlib at src/bspatch.ts:12, 45, 209. CI workflows all pin node-version: "22" (no minor). Local Node is v24.16.0.architecture-flow.svg (invisible on dark mode) with Mermaid diagram + audit other flow SVGs site-wide./_preview/pr-36/apply/ page — current numbers user describes as "completely made up".Open file: website/src/content/docs/index.mdx (clean after 1fd5ef0). Latest index.mdx structure: Hero → chart img → "What you save" (3 cards: Bandwidth, Wall time, User patience — CI minutes dropped) → "When to reach for binpatch" (4 Tabs: Self-updating CLI, Electron/Tauri, Agent/daemon, Game/native; with brand icons Bun/Deno/Node SEA & Fossilize/pkg via simpleicons CDN; pkg text aligned with yao-pkg.github.io tagline "Node.js to single executable") → "The catch: deltas need two halves" → "Get started". Duplicates of "The catch" and "How an update flows" removed; "Skip it when" removed; TRDIFF10 dropped from description + Electron tab + (was) mermaid node.
New file: website/src/content/docs/github-action.md has new "How an update flows" Mermaid diagram section (CI build → bsdiff+zstd → Patch → publish → Registry → discover → Updater → download chain (parallel hops) → apply + SHA-256 verify → Verified new binary). Architecture.md kept its own architecture-flow.svg (now targeted for Mermaid conversion per #2).
.lore.md and AGENTS.md are local untracked files (NOT in repo) — kept that way post-1fd5ef0 cleanup.
HEAD to get file sizes without downloading whole binaries (style: efficiency-first). Noted; bench script currently still downloads.bench/sentry-cli-bench.mjs script and its explainer should be dropped entirely ("people won't be interested :D"). Script deleted in commit 24bf966. Numbers are now baked into the SVG caption text only.mermaid@11.16.0 as runtime dep of website/package.json. New website/integrations/mermaid-renderer.mjs using injectScript("page", ...) — runtime renderer that scans pre[data-language="mermaid"], extracts .ec-line textContent, calls mermaid.render(id, source), swaps <pre> for <div class="mermaid"> containing SVG. Mermaid config: startOnLoad: false, theme: "neutral", securityLevel: "loose", fontFamily: "var(--sl-font)". Fallback on error: pre.textContent = source. Replaces CDN script in Starlight head config. Wire order in astro.config.mjs: prefixBaseLinks(), mermaidRenderer(), faviconAssets() then starlight({...}). npm build verified bundles mermaid as mermaid-parser.core.C71i3ALN.js referenced by abnfDiagram-VRR7QNED.D6ZwwF1K.js and architectureDiagram-ZJ3FMSHR.CsPTdIw1.js (latter confirms mermaid currently renders existing ABFN/architecture diagrams too)."vite": "^7.3.5" (added in commit 4231813 "build(deps) bump #11") was accidentally dropped during manual package.json edit at 97da9cd when adding mermaid dep — restoring it (590d5df) fixed local. CI uses npm ci with committed website/package-lock.json (astro@7.1.4 + vite@8.1.5). Switched local dev to npm ci to match CI behavior — npm build succeeds in 3.04s (or 2.21s incremental), 16 HTML files, 0 bad links across 1004 links/237 files.rollupOptions.input (rollup namespace) but Astro 7.1.6 sets rolldownOptions.input (rolldown namespace). Vite ignores rolldown config → falls back to resolve("index.html") → if SSR + input.endsWith(".html") → throws. The fix was to restore the pnpm overrides "vite": "^7.3.5" that was lost during the mermaid dep add — this keeps vite 7 (no rolldown coupling needed) but Astro 7.1.4 wants vite 8.x. CI bypasses this with npm + package-lock.json (vite@8.1.5).test + pull_request + non_fast_forward + required_linear_history. Workaround discovered — user "fixed" the branch protection rule (still being independently bypassed via creating new "v3" branch per commit cycle). Three replacement branches used this session: docs/any-binary-rebrand (PR #34, closed), docs/any-binary-rebrand-v2 (PR #35, closed), docs/any-binary-rebrand-v3 (PR #36, current). does NOT respect Astro base config — fixed by switching to inline JSX <img src={${import.meta.env.BASE_URL.replace(//$/, "")}/path.svg} alt="..." />. Same trailing-slash gotcha as MarkdownLink.astro. Patched in commit 4f241b1.do_not_enforce_on_create: true exempts new branch creation — but only the first push; subsequent pushes still fail until status check test runs.git merge origin/main) and committing merge — flow.svg was hand-drawn on main but deleted on branch (replaced by mermaid). Commit cdfcc07.cdn.simpleicons.org/bun, /deno, /nodedotjs, /npm./_preview/pr-36/apply/ — current numbers user considers "completely made up".bench/sentry-cli-bench.mjs — Node benchmark script. Originally downloaded 0.38.0+0.39.0 single-pair. Extended per 17:22+17:24 to do 8-pair measurement by default (env FROM/TO override), with aggregate stats output. Used pnpm env, fetch→disk, applyPatch(oldPath, patchData, destPath), SHA-256 verification. Final: median 4.0%, mean 4.2%, avg 31.4MB gz / 1.32MB patch, 8 pairs. Deleted in commit 24bf966.website/src/components/Footer.astro (63 lines) — Starlight Footer override + MarkdownLink wiring.website/src/components/MarkdownLink.astro (84 lines) — anchor + SVG icon (file+lines) + "View as Markdown". Class sl-flex print:hidden markdown-link astro-hgus5usv. Uses Astro.locals.starlightRoute.id for href with import.meta.env.BASE_URL.replace(/\/$/, "") prefix. Handles index case.website/src/pages/[...slug].md.ts (96 lines) — dynamic markdown endpoint. process.cwd()-based path resolution, getStaticPaths() includes flat installation.md + nested wire-contract/wire-contract.md forms. Final GET handler tries basename when slug has directory prefix. Serves Content-Type: text/markdown.website/integrations/mermaid-renderer.mjs (43 lines, commit 8619385) — Mermaid page-script injector (loreai PR #1528 blueprint). Render flow: find pre[data-language="mermaid"], extract .ec-line textContent, mermaid.render(id, source), swap <pre> for <div class="mermaid"> containing SVG. Error fallback pre.textContent = source. Mermaid config startOnLoad:false, theme:"neutral", securityLevel:"loose", fontFamily:"var(--sl-font)".website/astro.config.mjs — added prefixBaseLinks(), mermaidRenderer(), kept starlight integration. 126 lines. Site https://binpatch.p.byk.im. Base via process.env.DOCS_BASE_PATH || "/".website/package.json — added mermaid@11.16.0 runtime dep. CRITICAL FIX (590d5df): restored `"vite": "^7.