{"_id":"@agentplat/collective-sync","_rev":"10-4d312427ae9e5c61ad97b4e6b10c1b4d","name":"@agentplat/collective-sync","dist-tags":{"agentplat-stage-dbd047c3c9a9":"0.3.0-beta.4","agentplat-stage-ffca668731c9":"0.3.0-beta.4","agentplat-stage-dc16b2267584":"0.3.0-beta.5","next":"0.3.0-beta.8","latest":"1.2.0"},"versions":{"0.3.0-beta.4":{"name":"@agentplat/collective-sync","version":"0.3.0-beta.4","license":"Apache-2.0","_id":"@agentplat/collective-sync@0.3.0-beta.4","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"0f4906e043a5505c35f7e95b9671eb838e6faf81","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-0.3.0-beta.4.tgz","fileCount":47,"integrity":"sha512-ZXZoD3RUzLkwZc2jy1Gu840rJGgxfMxtKVV4Y97So0Oi9xAKYD2Ntc+UR+fZqHM5Tg7E3iyutkTPE6suiF+Z6A==","signatures":[{"sig":"MEUCIC6OXXfOi+0vI0qnkwTlFvBn85W4uMRb1cQtm/ualSU7AiEAquGlhjcAYCL2X9eoElR9t/47S1f0d9aqceZmkmDQ62Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225075},"main":"./dist/index.js","type":"module","_from":"file:/tmp/agentplat-publish-jABHQZ/tarballs/agentplat-collective-sync-0.3.0-beta.4.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"douglas-grishen","email":"douglas@grishen.com"},"_resolved":"/tmp/agentplat-publish-jABHQZ/tarballs/agentplat-collective-sync-0.3.0-beta.4.tgz","_integrity":"sha512-ZXZoD3RUzLkwZc2jy1Gu840rJGgxfMxtKVV4Y97So0Oi9xAKYD2Ntc+UR+fZqHM5Tg7E3iyutkTPE6suiF+Z6A==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"10.8.2","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","dependencies":{"@agentplat/mesh-crypto":"^0.3.0-beta.4","@agentplat/mesh-protocol":"^0.3.0-beta.4","@agentplat/collective-quorum":"^0.3.0-beta.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/collective-sync_0.3.0-beta.4_1786996629820_0.9253419876973543","host":"s3://npm-registry-packages-npm-production"}},"0.3.0-beta.5":{"name":"@agentplat/collective-sync","version":"0.3.0-beta.5","license":"Apache-2.0","_id":"@agentplat/collective-sync@0.3.0-beta.5","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"d3531e35d44ffa5af94bcf70c150921d95ca61b5","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-0.3.0-beta.5.tgz","fileCount":47,"integrity":"sha512-52v4hxBoAl/7j7AF9rV/vZ0q0UJ5zyCb9H1v5mL0WyYu4znjm+nkI49zyeetFtrIneQEMWIn619y2uOa9vFTDA==","signatures":[{"sig":"MEUCIQChZM6IFSYYUFfg4kzpJ/3hNVro0QdfWqd1/c3vZCV5AAIgdhji7IVVZbCNPJUZ25nw0BNTWOn2czKYY5keLZQa0+s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@0.3.0-beta.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225075},"main":"./dist/index.js","type":"module","_from":"file:/tmp/agentplat-publish-QbF2qw/tarballs/agentplat-collective-sync-0.3.0-beta.5.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:80e5ca3d-f18e-4109-9cb8-2b77f7a96ac4"}},"_resolved":"/tmp/agentplat-publish-QbF2qw/tarballs/agentplat-collective-sync-0.3.0-beta.5.tgz","_integrity":"sha512-52v4hxBoAl/7j7AF9rV/vZ0q0UJ5zyCb9H1v5mL0WyYu4znjm+nkI49zyeetFtrIneQEMWIn619y2uOa9vFTDA==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.17.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","dependencies":{"@agentplat/mesh-crypto":"^0.3.0-beta.5","@agentplat/mesh-protocol":"^0.3.0-beta.5","@agentplat/collective-quorum":"^0.3.0-beta.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/collective-sync_0.3.0-beta.5_1787371900942_0.30316243729402204","host":"s3://npm-registry-packages-npm-production"}},"0.3.0-beta.7":{"name":"@agentplat/collective-sync","version":"0.3.0-beta.7","license":"Apache-2.0","_id":"@agentplat/collective-sync@0.3.0-beta.7","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"0586c37eee9016e625cec680d7cbaed8efc1e53f","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-0.3.0-beta.7.tgz","fileCount":47,"integrity":"sha512-GTvW/txrMHEOROa06haqmq73T2DRrzhWo9f/5GQghUYBnp/hNRqnVu33PbYE5k5V6jv4cUp12Pd+qczdBD6hnw==","signatures":[{"sig":"MEQCIFuEo8r3ZUwKt1bQjJgmuoeQXPs/XZtqA4nDhvSMZQUtAiAxK2KTyDmUODYGefS889IZw6qJOtLV46fbJ5FjUDBQyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@0.3.0-beta.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225482},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-0.3.0-beta.7.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"douglas-grishen","email":"douglas@grishen.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:b87ce6ba-a012-4b84-8f17-37f22c7ebc3f"}},"_resolved":"/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-0.3.0-beta.7.tgz","_integrity":"sha512-GTvW/txrMHEOROa06haqmq73T2DRrzhWo9f/5GQghUYBnp/hNRqnVu33PbYE5k5V6jv4cUp12Pd+qczdBD6hnw==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.19.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@agentplat/mesh-crypto":"^0.3.0-beta.7","@agentplat/mesh-protocol":"^0.3.0-beta.7","@agentplat/collective-quorum":"^0.3.0-beta.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/collective-sync_0.3.0-beta.7_1788979773714_0.9881252246715011","host":"s3://npm-registry-packages-npm-production"}},"0.3.0-beta.8":{"name":"@agentplat/collective-sync","version":"0.3.0-beta.8","license":"Apache-2.0","_id":"@agentplat/collective-sync@0.3.0-beta.8","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"c083edca1b05b1ff37edc396651b7ef8910d84a3","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-0.3.0-beta.8.tgz","fileCount":47,"integrity":"sha512-GNfR3Z+DAj3to87Seaazi74ogKuVipL2d+sgFiEOCkMih3xAzz8Q20n8n4R9bXM/dzSx2ApBMLwH4Y41rEm4tg==","signatures":[{"sig":"MEYCIQCagYjZSLtvWOwhcgUsDdsCzRaaV/OkuxXcZG9FgMIjxAIhAMBaq7GvGo3Zsvqdejoq3Aj7Qy60HiMmKkDJ4tgK3lsa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@0.3.0-beta.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225605},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-0.3.0-beta.8.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"douglas-grishen","email":"douglas@grishen.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:b87ce6ba-a012-4b84-8f17-37f22c7ebc3f"}},"_resolved":"/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-0.3.0-beta.8.tgz","_integrity":"sha512-GNfR3Z+DAj3to87Seaazi74ogKuVipL2d+sgFiEOCkMih3xAzz8Q20n8n4R9bXM/dzSx2ApBMLwH4Y41rEm4tg==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.19.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@agentplat/mesh-crypto":"^0.3.0-beta.8","@agentplat/mesh-protocol":"^0.3.0-beta.8","@agentplat/collective-quorum":"^0.3.0-beta.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/collective-sync_0.3.0-beta.8_1789349210004_0.8609987292450083","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@agentplat/collective-sync","version":"1.0.0","license":"Apache-2.0","_id":"@agentplat/collective-sync@1.0.0","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"1ff0a111e8c7086cff915f374a3047c9437474db","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-1.0.0.tgz","fileCount":47,"integrity":"sha512-CSnUETEm+vZB1DXiHopqHtOjOl7gsRxTPeNnYtfEoLMKCQVqLuvmrVkouiH6aARkLIGyVbh7necU7fEAvmmoyg==","signatures":[{"sig":"MEUCIBCPzsrDCtY0GM5NxPXPFbXKaMA5A63BDmJF+rEUcn7tAiEA3RYZZH+9oaAaX3ZxC+FEPIX28pHh1VPG8kQoChZ322A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD19/c9c661AH7Jf7Rgqf8wiQjLVkVcDVxM6/DiD210QAIhALie6VDwE+Tztky2vQYTNgy3ovrOt5SBMGib5ZjefFK6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225577},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.0.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:17a85533-b244-40a6-b3c6-a3f5c50fab6f"}},"_resolved":"/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.0.0.tgz","_integrity":"sha512-CSnUETEm+vZB1DXiHopqHtOjOl7gsRxTPeNnYtfEoLMKCQVqLuvmrVkouiH6aARkLIGyVbh7necU7fEAvmmoyg==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.19.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@agentplat/mesh-crypto":"^1.0.0","@agentplat/mesh-protocol":"^1.0.0","@agentplat/collective-quorum":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/collective-sync_1.0.0_1790116472607_0.9656750125992901","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@agentplat/collective-sync","version":"1.1.0","license":"Apache-2.0","_id":"@agentplat/collective-sync@1.1.0","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"homepage":"https://github.com/Agentplat/agentplat#readme","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"f8158d4d2c914e8692b59e7e70db0d471379146f","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-1.1.0.tgz","fileCount":47,"integrity":"sha512-ZCFZw+dzuRT+6KG3amxI3oUoSl03pJdhZu/eYwtvrUsJgKD3mYI4ROLVMad8/HUyx0s/v7FA3d05Fp9D0hVmng==","signatures":[{"sig":"MEYCIQCJxR9W+yEh1O8bbb10mLsu52A0IoykR+vUvcx3vRAsrwIhAO4EAikU+TuuOunMSHCruPUpzT75x8H/YwcK720EKGsA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAXH4kFb0htshpsTNxcEFtASLBL/RjLOAwPhtVY6DmWRAiBC7q0KTQaJQp33wt8UR300N5MMjy9tsEHz/TmpQr7kFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225577},"main":"./dist/index.js","type":"module","_from":"file:/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"17a85533-b244-40a6-b3c6-a3f5c50fab6f"}},"_resolved":"/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.1.0.tgz","_integrity":"sha512-ZCFZw+dzuRT+6KG3amxI3oUoSl03pJdhZu/eYwtvrUsJgKD3mYI4ROLVMad8/HUyx0s/v7FA3d05Fp9D0hVmng==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.19.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@agentplat/mesh-crypto":"^1.1.0","@agentplat/mesh-protocol":"^1.1.0","@agentplat/collective-quorum":"^1.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/collective-sync_1.1.0_1790699676573_0.7200436296409913","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"_id":"@agentplat/collective-sync@1.2.0","bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"dist":{"shasum":"bb108641bd6cb22d0d262e4a33b6b7f93d5a2141","tarball":"https://registry.npmjs.org/@agentplat/collective-sync/-/collective-sync-1.2.0.tgz","fileCount":47,"integrity":"sha512-OfhGuEH/jsM6I8fCezCi9sjBC+WFznWalmfw+pHWtG/6JG/gzeuIKABvdTls66NBbVlpw5oBu/aNBRe9XqZHrg==","signatures":[{"sig":"MEUCIAvMNjFt/dFj3eDjjnsVr1exCITHz+VxDhJV1Ni2lkovAiEAywW2Un5dCyuYT1z9lWkr8wZd1zRixTjz8YdFdjkKKck=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCRG92MW20nVPDdslqHtN1jI90N44V4Drn91dGV4ELpCAIgSKmx4fTwnLmcTYZ3hDf2DFBZGBzv8Hx6UjWxOUZ1/pc="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentplat%2fcollective-sync@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":225577},"main":"./dist/index.js","name":"@agentplat/collective-sync","type":"module","_from":"file:/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.2.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.19.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"Apache-2.0","scripts":{"test":"pnpm run build && node --test tests/*.test.mjs","build":"tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","type-check":"tsc -p tsconfig.json --noEmit"},"version":"1.2.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"17a85533-b244-40a6-b3c6-a3f5c50fab6f"}},"homepage":"https://github.com/Agentplat/agentplat#readme","_resolved":"/home/runner/work/agentplat/agentplat/release-artifacts/agentplat-collective-sync-1.2.0.tgz","_integrity":"sha512-OfhGuEH/jsM6I8fCezCi9sjBC+WFznWalmfw+pHWtG/6JG/gzeuIKABvdTls66NBbVlpw5oBu/aNBRe9XqZHrg==","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"_npmVersion":"11.19.0","description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","directories":{},"maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"sideEffects":false,"_nodeVersion":"24.20.0","dependencies":{"@agentplat/mesh-crypto":"^1.2.0","@agentplat/mesh-protocol":"^1.2.0","@agentplat/collective-quorum":"^1.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/collective-sync_1.2.0_1790812373001_0.6402898377699875"}}},"time":{"created":"2026-08-17T19:57:09.662Z","modified":"2026-09-30T23:52:53.443Z","0.3.0-beta.4":"2026-08-17T19:57:09.975Z","0.3.0-beta.5":"2026-08-22T04:11:41.181Z","0.3.0-beta.7":"2026-09-09T18:49:33.812Z","0.3.0-beta.8":"2026-09-14T01:26:50.083Z","1.0.0":"2026-09-22T22:34:32.690Z","1.1.0":"2026-09-29T16:34:36.669Z","1.2.0":"2026-09-30T23:52:53.089Z"},"bugs":{"url":"https://github.com/Agentplat/agentplat/issues"},"license":"Apache-2.0","homepage":"https://github.com/Agentplat/agentplat#readme","repository":{"url":"git+https://github.com/Agentplat/agentplat.git","type":"git","directory":"packages/collective-sync"},"description":"Authenticated causal anti-entropy, resumable catch-up, and readiness evidence for Agentplat collectives.","maintainers":[{"name":"douglas-grishen","email":"douglas@grishen.com"}],"readme":"# `@agentplat/collective-sync`\n\nProvider-neutral authenticated causal anti-entropy for independently hosted\nAgentplat collective peers.\n\n## Installation (developer preview)\n\nInstall the coordinated preview explicitly:\n\n```sh\nnpm install @agentplat/collective-sync@next\n```\n\nKeep all `@agentplat/*` packages on the same release version. npm's default\n`latest` tag can point to an older preview. See the\n[release channels](https://github.com/Agentplat/agentplat/blob/main/docs/release-channels.md)\nfor distribution status and version selection.\n\nThe package exposes signed, membership-bound frontier discovery, bounded chunk\ntransfer, receipts, threshold catch-up certificates, resumable repository\ncontracts, a readiness gate, an in-memory reference repository, and WHATWG\nFetch HTTP adapters. Importing it performs no network, filesystem, migration,\ntimer, or global-registration work.\n\n## Minimal shape\n\n```ts\nimport {\n  CollectiveSyncClientV1,\n  CollectiveSyncPeerV1,\n  CollectiveSyncReadinessGateV1,\n  InMemoryCollectiveSyncRepositoryV1,\n} from \"@agentplat/collective-sync\";\n\nconst repository = new InMemoryCollectiveSyncRepositoryV1(scope);\nconst peer = new CollectiveSyncPeerV1({\n  scope,\n  signing,\n  membership,\n  repository,\n  clock,\n});\nconst client = new CollectiveSyncClientV1({\n  scope,\n  signing,\n  membership,\n  repository,\n  transport,\n  clock,\n  adapter: {\n    validate: (record) => domainReducer.accepts(record.payload),\n    replay: (records) => domainReducer.replay(records.map((r) => r.payload)),\n  },\n});\n\nawait client.catchUp({ syncDomain: \"mission.42.planning\" });\n// Availability-only lookup; this does not create a readiness certificate.\nawait client.resolveRecord({\n  peerId: \"peer.2\",\n  syncDomain: \"planning.artifacts.v1\",\n  streamId: \"planning.artifact.<fragment-digest>\",\n  sequence: 1,\n});\nconst readiness = await new CollectiveSyncReadinessGateV1({\n  scope,\n  membership,\n  repository,\n  clock,\n}).check({ syncDomain: \"mission.42.planning\" });\n```\n\n## Security boundary\n\nA source signature authenticates transport provenance only. The supplied domain\nadapter must apply normal authority and semantic validation before records are\nreplayed. Do not create synchronization records from credentials, signing\nmaterial, raw prompts, private reasoning, transient inference context, or any\nother content that is not explicitly safe to replicate.\n\n`resolveRecord` authenticates one exact source response and replays one domain\nvalidated record. It proves availability only; callers must not treat it as\nthreshold agreement or causal readiness.\n\nThe default readiness threshold is the current membership majority. A\ncertificate is invalid after membership rotation, instance change, or local\nfrontier movement. V1 does not claim Byzantine consensus or reconcile forks.\nIncoming signed-envelope lifetimes default to a 30-second maximum, and HTTP\nrequest and response streams are stopped after 1 MiB even when no\n`Content-Length` header is present. Hosts may lower those bounds per deployment.\nSee the repository ADR and threat model for the complete invariants.\n","readmeFilename":"README.md"}