{"_id":"@buildtovalue/anchor-s3","_rev":"2-59bd2acabe768b8af0df82f4f320a122","name":"@buildtovalue/anchor-s3","dist-tags":{"latest":"1.0.2-next.0"},"versions":{"1.0.1":{"name":"@buildtovalue/anchor-s3","version":"1.0.1","keywords":["bpmn","anchor","s3","object-lock","trust"],"license":"Apache-2.0","_id":"@buildtovalue/anchor-s3@1.0.1","maintainers":[{"name":"danzeroum","email":"danzeroum@gmail.com"}],"homepage":"https://github.com/danzeroum/bpmn#readme","bugs":{"url":"https://github.com/danzeroum/bpmn/issues"},"dist":{"shasum":"569f28bcfc9d0e30236e870a66cf3502fc5c67ee","tarball":"https://registry.npmjs.org/@buildtovalue/anchor-s3/-/anchor-s3-1.0.1.tgz","fileCount":16,"integrity":"sha512-rXK3mmMVVw1Bdz3azG8itISlPBC9PIkpONSio06n/YjwGM40zNEE5hvdU9RltBstSm08ezO+AbRlBaChFlCU3A==","signatures":[{"sig":"MEUCIQDxLXL5UTTSPA02uZeH/7cgKuMGfwhTAwx/5MlVnL/eRgIgcznesJXB/r64G57pMMkPDyIycvkgkACVVnzBVJA1IEI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22412},"main":"./dist/cjs/index.js","type":"module","_from":"file:buildtovalue-anchor-s3-1.0.1.tgz","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"scripts":{"build":"tsc -p tsconfig.build.json && tsc -p tsconfig.cjs.json && node ../../scripts/write-cjs-package.mjs dist/cjs","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"danzeroum","email":"danzeroum@gmail.com"},"_resolved":"C:\\Users\\danni\\AppData\\Local\\Temp\\606120598f5df733498153b07692d8e6\\buildtovalue-anchor-s3-1.0.1.tgz","_integrity":"sha512-rXK3mmMVVw1Bdz3azG8itISlPBC9PIkpONSio06n/YjwGM40zNEE5hvdU9RltBstSm08ezO+AbRlBaChFlCU3A==","repository":{"url":"git+https://github.com/danzeroum/bpmn.git","type":"git","directory":"packages/anchor-s3"},"_npmVersion":"10.9.3","description":"S3 (object-lock) anchor adapter (Handoff 8): anchors the ledger chain head to a write-once object via a HOST-injected client (the library never does network). Implements the AnchorAdapter contract from @buildtovalue/identity. Zero runtime dependencies.","directories":{},"sideEffects":false,"_nodeVersion":"22.20.0","dependencies":{"@buildtovalue/identity":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/anchor-s3_1.0.1_1784345294334_0.40182089939518506","host":"s3://npm-registry-packages-npm-production"}},"1.0.2-next.0":{"name":"@buildtovalue/anchor-s3","version":"1.0.2-next.0","description":"S3 (object-lock) anchor adapter (Handoff 8): anchors the ledger chain head to a write-once object via a HOST-injected client (the library never does network). Implements the AnchorAdapter contract from @buildtovalue/identity. Zero runtime dependencies.","license":"Apache-2.0","type":"module","sideEffects":false,"engines":{"node":">=20"},"main":"./dist/cjs/index.js","module":"./dist/esm/index.js","types":"./dist/esm/index.d.ts","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"}},"dependencies":{"@buildtovalue/identity":"1.1.0-next.0"},"keywords":["bpmn","anchor","s3","object-lock","trust"],"repository":{"type":"git","url":"git+https://github.com/danzeroum/bpmn.git","directory":"packages/anchor-s3"},"publishConfig":{"access":"public"},"scripts":{"build":"tsc -p tsconfig.build.json && tsc -p tsconfig.cjs.json && node ../../scripts/write-cjs-package.mjs dist/cjs","typecheck":"tsc -p tsconfig.json --noEmit"},"_id":"@buildtovalue/anchor-s3@1.0.2-next.0","bugs":{"url":"https://github.com/danzeroum/bpmn/issues"},"homepage":"https://github.com/danzeroum/bpmn#readme","_integrity":"sha512-hIQlAuqWi+4fDB8F+q0mffB/HKZ0p9sw5aTWeF52cZ4/cQ/OLQ8IVsgzZmEoA6/Pf6VIeDSGVp9xrKLbLL9thA==","_resolved":"/tmp/4c316caa580cc46fe17c537b9725b263/buildtovalue-anchor-s3-1.0.2-next.0.tgz","_from":"file:buildtovalue-anchor-s3-1.0.2-next.0.tgz","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-hIQlAuqWi+4fDB8F+q0mffB/HKZ0p9sw5aTWeF52cZ4/cQ/OLQ8IVsgzZmEoA6/Pf6VIeDSGVp9xrKLbLL9thA==","shasum":"cfb2340d4503d88e3556ed133a9f57d14279a20b","tarball":"https://registry.npmjs.org/@buildtovalue/anchor-s3/-/anchor-s3-1.0.2-next.0.tgz","fileCount":16,"unpackedSize":22194,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGgiYmyCw8LltaEu4ZLuZo6mZui8FOvI0MikzEUTxAHIAiBps3HqDkdqmWVYzNbBOSuKcK3uANsky+BwD/Rz1WMPeQ=="}]},"_npmUser":{"name":"danzeroum","email":"danzeroum@gmail.com"},"directories":{},"maintainers":[{"name":"danzeroum","email":"danzeroum@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/anchor-s3_1.0.2-next.0_1784725579931_0.15634093350052947"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-18T03:28:14.245Z","modified":"2026-07-22T13:06:20.240Z","1.0.1":"2026-07-18T03:28:14.470Z","1.0.2-next.0":"2026-07-22T13:06:20.089Z"},"bugs":{"url":"https://github.com/danzeroum/bpmn/issues"},"license":"Apache-2.0","homepage":"https://github.com/danzeroum/bpmn#readme","keywords":["bpmn","anchor","s3","object-lock","trust"],"repository":{"type":"git","url":"git+https://github.com/danzeroum/bpmn.git","directory":"packages/anchor-s3"},"description":"S3 (object-lock) anchor adapter (Handoff 8): anchors the ledger chain head to a write-once object via a HOST-injected client (the library never does network). Implements the AnchorAdapter contract from @buildtovalue/identity. Zero runtime dependencies.","maintainers":[{"name":"danzeroum","email":"danzeroum@gmail.com"}],"readme":"# @buildtovalue/anchor-s3\n\nS3 **object-lock anchor adapter** (Handoff 8): anchors the ledger chain head to a\nwrite-once object, implementing the `AnchorAdapter` contract from\n`@buildtovalue/identity`.\n\n## The host owns the S3 client (no network in the library)\n\nYou inject `put`/`get`; the library never talks to S3. Point `put` at an\nobject-lock (WORM) bucket so anchors are immutable.\n\n```ts\nimport { createS3Anchor } from '@buildtovalue/anchor-s3';\n\nconst anchor = createS3Anchor({\n  async put(key, body) {\n    return host.s3PutObject(key, body); // { versionId? }\n  },\n  async get(key) {\n    return host.s3GetObject(key); // undefined when unreachable\n  },\n});\n\nconst receipt = await anchor.anchor({ hash: head.hash, seq: head.seq });\nawait anchor.verify(receipt, currentHashAtSeq); // 'anchored' | 'mismatch' | 'unavailable'\n```\n\nDerive the UI state from the result via `deriveAnchorState` in\n`@buildtovalue/identity`. Consumes only `@buildtovalue/identity` — pinned by\n`tests/independence.test.ts`. **Zero runtime dependencies.**\n","readmeFilename":"README.md"}