Artifact d91a3cfe42165299c14c6469ee4bf7accc6517e47e64f43d61e0531ed58d78a7:
The clone/sync receive path inflated every stored cfile container to prove the RFC1950 stream was intact (§3.9), then threw the result away: the store keeps the container verbatim and reconstructs lazily, and the persist commit hook runs the §7.7 integrity check on the reconstructed bytes. For the full form that inflate was pure waste. Move the decode into the delta branch (which genuinely needs the plaintext to reconstruct) so a full-form cfile is interned and retained without inflating.
Retaining an unvalidated container means a held artifact is no longer guaranteed reconstructable: content() can be null for a corrupt wire-backed container, so held() no longer implies content(). Reconcile the consumers that assumed it did. The pull .raw delta basis and the push upload path both degrade gracefully (round abort / silent skip) instead of tripping an unreachable or assert on hostile input; the read/derivation path keeps the decompression-bomb cap, and the eager clone-end image treats a corrupt container as an error.
Cuts clone peak RSS ~13% (651 -> 568 MB) on the fossil corpus by dropping the discarded plaintext allocation. Instruction count and wall are flat, since full-form cfiles are the minority of clone content. 1538 tests pass; fossil interop smoke green. by dmestas on 2026-07-17 13:43:27.
C Skip\sthe\sreceive-side\sinflate\sfor\sfull-form\sclone\scontent\n\nThe\sclone/sync\sreceive\spath\sinflated\severy\sstored\scfile\scontainer\sto\nprove\sthe\sRFC1950\sstream\swas\sintact\s(§3.9),\sthen\sthrew\sthe\sresult\saway:\nthe\sstore\skeeps\sthe\scontainer\sverbatim\sand\sreconstructs\slazily,\sand\sthe\npersist\scommit\shook\sruns\sthe\s§7.7\sintegrity\scheck\son\sthe\sreconstructed\nbytes.\sFor\sthe\sfull\sform\sthat\sinflate\swas\spure\swaste.\sMove\sthe\sdecode\ninto\sthe\sdelta\sbranch\s(which\sgenuinely\sneeds\sthe\splaintext\sto\nreconstruct)\sso\sa\sfull-form\scfile\sis\sinterned\sand\sretained\swithout\ninflating.\n\nRetaining\san\sunvalidated\scontainer\smeans\sa\sheld\sartifact\sis\sno\slonger\nguaranteed\sreconstructable:\scontent()\scan\sbe\snull\sfor\sa\scorrupt\nwire-backed\scontainer,\sso\sheld()\sno\slonger\simplies\scontent().\sReconcile\nthe\sconsumers\sthat\sassumed\sit\sdid.\sThe\spull\s.raw\sdelta\sbasis\sand\sthe\npush\supload\spath\sboth\sdegrade\sgracefully\s(round\sabort\s/\ssilent\sskip)\ninstead\sof\stripping\san\sunreachable\sor\sassert\son\shostile\sinput;\sthe\nread/derivation\spath\skeeps\sthe\sdecompression-bomb\scap,\sand\sthe\seager\nclone-end\simage\streats\sa\scorrupt\scontainer\sas\san\serror.\n\nCuts\sclone\speak\sRSS\s~13%\s(651\s->\s568\sMB)\son\sthe\sfossil\scorpus\sby\ndropping\sthe\sdiscarded\splaintext\sallocation.\sInstruction\scount\sand\swall\nare\sflat,\ssince\sfull-form\scfiles\sare\sthe\sminority\sof\sclone\scontent.\n1538\stests\spass;\sfossil\sinterop\ssmoke\sgreen. D 2026-07-17T13:43:27.632 F .fossil-settings/ignore-glob 48212e9febe6d74143ee9ac63664d0385fbd2cb43e9877c4c7d86f1faf726292 F README.md 62e1f936cc2ea0e33d717539bdffd6126a639843069bd6256359f2b15cb06232 F build.zig 362c522e6e7a7d7b54a660663f97e7d8ca5ad53a9eb6b6fe458c3b1d44e2d3fa F build.zig.zon d5d4d8f8c01f55e69078eabf2ee65f7c1756bdbb2f71738ac5de9de99e69aff1 F docs/rfcs/draft-fossil-artifact-format-00.txt a6d542a5effeb41d0ea1e916058ccdc0a5819787f167ef1ebad7814f5680e7ad F docs/rfcs/draft-fossil-delta-format-00.txt d8025d6d75322e33887c3334a4b9cc729960028b3c994ed01e5a474e4b388fd2 F docs/rfcs/draft-fossil-repo-state-00.txt fd413bcb28001a8a07009ca0c769cfe666394ba79dd4f14a6461f2b592049595 F docs/rfcs/draft-fossil-sync-protocol-00.txt aa55791464a54ef4b651df8780ba5c46e95c723c7997d09a5b727fef658f920a F src/artifact.zig b099a9c79f207475b2945bb18114e981747975a97bda34a7134cc2f246218a9d F src/artifact_fuzz.zig 8bb359ddfe790818e109a1dd7ac0c1b5cec1a8fdc556f37e73504cdb7f933e17 F src/artifact_test.zig da999476660f7e6e1f50ed9da5c30f1c83d6b358e2cfcd265c6932959c85bdd1 F src/checkout.zig d77c2a4e6b9e2439504d5d8b76031a779a4717a0ba34c486b7ff7001efdbcc97 F src/cli.zig dd24b9322c802336d654046856d2efac7af2c79b2ae63f6dbc89d6f4e0673db3 F src/container.zig cef1028531f2763f94248b761c8779a1884e44bb854b8c45617494e3ead40e61 F src/container_test.zig a013652b1ed181161d3ad8fc9d8f052f7c27b61e129662632ceaf8cf189445ec F src/delta.zig e8f3a6297d47549aea146222732ccf514c39688414f0a74ba396ac91066686f3 F src/delta_fuzz.zig 9e0d8dbb8c82ca0ba1a80974c076e74e4f37072b21a10812efd5539875904719 F src/delta_test.zig b18d97e117dce8fbcc05bff6f6954effdb946bab6d36337efbe5ef64d10646a0 F src/dst.zig f013a0330c40eaee7e4305f859a3a442c4d7ce145a30a94e844b079c7c52137e F src/e2e.zig afe5f9ff0090ad94c500ae1b6f1834912c9eb60eabcb68913ccafaa78177aaa9 F src/fuzz_tests.zig 8d8affa880d8ac472c22d3c7bab6ecdb952a445ea1e41023a7420368cd18efe6 F src/logstore.zig a2abf89642a796a931ec007514e9d09d69e16f0daf7cbbaedfb309ce81d2d9bf F src/logstore_benchmark.zig e245474e1cc4f10617866f718aab3958f13b256c609b3e5fd562f500668388c0 F src/logstore_fuzz.zig a16c5bf2acc3b0e144bc10eecc308ef9070bda9f763028c525b7668eed62de32 F src/logstore_test.zig 14a0813d828fb242c4aa8dca45414ed95468a74197fe9bceb96deb6290e89c43 F src/main.zig 6fbd2a305f3fd9746c83a920fb25621bb3238489cfb1c7b85b84585f01395a81 F src/managed.zig 68f672a2572be84fa06d8dfc5895d576e304306c33a510128e0ce16b9f0ca741 F src/repocache.zig aae232a6b1b86e27c5242c0ee17ce9f2544299d99cf4936d8c2c9000e3166884 F src/repoimage.zig 7d2dc2f3c145e10e2d9ba6997705fd61a0cc0aedde8e171c253163d1279ccdd5 F src/repository.zig 7f925277bf1a3d0cd892e0dc386b2cad6d16f95545cffc30d1422b15e1a7c9d1 F src/repository_test.zig 8cc334f64023d8e58532d721ca75faf2880e6067716b4fbdfa596c26d35fca87 F src/repostate.zig 49044cc9ea2079abd8aaf7fa94da515ca74be80dd7938fe0c840f840dff0355c F src/repostate_test.zig 0333453b73d0c1fdb9e74dccbbdb46d969e66cd1c037acb06d0882b1008c8b3e F src/repoview.zig ec2958e1e8fd955c761d240ab80c3b3f62e3473991713c25ed5a603df984e403 F src/rfc_vectors/artifact_a1_1_sha1_manifest.txt 82d8fc78b3fbf85efe80cb05e79db40c910bf0551e55b728c6f9c2ca7a42ddb6 F src/rfc_vectors/artifact_a1_2_sha3_technote.txt 832e850f83aab2e2a754aa97591109f7f05fb41e4126c7e71c88a59d6d17e55d F src/rfc_vectors/artifact_a3_rcard_manifest.txt 47e412ef211f095e93275fadf527909e581eef42357d8437fc7e299bfc3e62a7 F src/rfc_vectors/sync_a1_round1_reply.txt 638813029b10f81303b88859279afb17095d7c779c993f4267870909acabbeb9 F src/rfc_vectors/sync_a1_round2_file_cards.txt 4fa397741f7521cc4181d5d6b04dc143187f57602384eaa688552115ecda27c2 F src/rfc_vectors/sync_a1_round2_reply.txt af956808190c79b37a384041690c36b78845b471d6c6c01d1cced6e3ee92e6b1 F src/rfc_vectors/sync_a2_reply.txt aa130a127cde210f793c7842960083c765e0ffc7b673374fabc8f0edfe03d763 F src/root.zig 5af382196a32be75cd35aeeae934fa22ca8394b68fd44d702ad89127cbf6f43b F src/serve.zig e86c2f1f3ba9219c326e322823f57d961dbf462d82984c1a8fdc0856dd12a2e1 F src/sim/faulty_file.zig 8e8a0325d0e987d1dd306588f910af5302e6456561eefae92c73c424fc1a9c94 F src/sim/gen.zig 0e237af570a73bc78e9a717a8ea59867611deb2348287765826ea4ff1942528b F src/sim/net.zig 8fb057012ce0a33f67c928cd696bc2761fea8ba4012b2daa33871b2ba5dfe772 F src/sim/oracle.zig 04b81d9472a0529d9e9d030779304c3d6c930f4db20b800ae3f9cbc5c178969a F src/sim/storage_sweep.zig c41aaffe0805cc5fd50c6a2b8b1d6dbd55b5a07be68cde90105adaaca31c9dc6 F src/sim/sync_gen.zig 238d46942915b5c0e989dfc738b5927b5228468ea123e6f17b6fb593aa5cbf6e F src/sim/sync_sweep.zig 5458a84be08823d2d0fc9464665f1c3f3f26563185dc9ae24cf73259faa5d40e F src/smoke.zig c3d33acd93f11af1a7eaab3e1fe1fc16dfb2d0f39585055cd477e656f86d491c F src/storage.zig 512205eb629d5af8d50ad336f1ef49f53b455abd52ee2f9b56d20893cafad39f F src/storage_benchmark.zig 871f00fef1a34a0b2ee7b9656a217a0cf52949fdd710b642a44dc6bf12d6866e F src/sync.zig b04119b2679887c6705ed4831899ca1911ca20afe0bac865022ac8b7ad879194 F src/sync_benchmark.zig 9a4542401c880750ff6565a2ca9f1d116341d1c5af704ef4a05c2732eeec8849 F src/sync_driver.zig 722ed498ea6b76900661a085d4257e51f6416d43ac1185e8ac15140de265f67e F src/sync_driver_test.zig b50450d2938fc60aa90cd9067fc45141a965b63dc2194f42d5109919e380d7df F src/sync_fuzz.zig 3f419ec3e3c0b4ecf99376e46d111c4fae9826d08f9968e649ffdf84d10f9e61 F src/sync_test.zig b47b05d3defeef61a02c9c9817b66288c48430713737c946734dba151bb17e7e F src/transport.zig 4652b2ab7f43ccd8af5ca6ef7604f8e7cd28353450b1ec90d206b881308f8b5f F src/update.zig c9eae1aecd395c4ef25d82421e4b0bacf1c68b20de48f17bba8b2c9498b663c3 F src/update_test.zig fc38086e2fd03bdeafdad0331f347895ab57df9c53060965ceadb5f794e7b8cb F src/warmread_benchmark.zig 9421986d49deff3f720e491fb6d1c7162dc9322f4e67dd14198820c3992dc02a P fbfef2b6497651722d6bc4f79bc6664b23e640926cc5bcbcb42ac3483e50afb2 R c1ec03f33c1b04637fb7cd77cb2cf663 T *branch * clone-w4 T *sym-clone-w4 * T -sym-trunk * U dmestas Z 292825c734201515f9288e8ab0e0d5cf