{"_id":"@arsenstorm/olos","_rev":"7-b7f0396e7e71cc088f25f6ae700a349b","name":"@arsenstorm/olos","dist-tags":{"latest":"0.6.0"},"versions":{"0.1.0":{"name":"@arsenstorm/olos","version":"0.1.0","license":"MIT","_id":"@arsenstorm/olos@0.1.0","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"41da721bba0e0a2064b8631700694b433304e444","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.1.0.tgz","fileCount":299,"integrity":"sha512-xp7K+uR3Jc2JXOPrXtkzk46bm61KDTf4C/z2RQiqdBS3QSRWSDzQjTS2ns5689gtQxv11oONXuOiw712dSmyCw==","signatures":[{"sig":"MEQCIGJ7pDHSA5TwCJcOsuCW6JMYRF5q/ioRTJ6vVw11vgG1AiAKi6FZ3S9UAZ8l/sYh/ixBv/NI5mffg/lsItZxbh0OMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":771150},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"42c21e12c7aa2ab5d85d8a8b3f7463d0123ce5a4","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"arsenstorm","email":"arsen@shkrumelyak.com"},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"10.9.8","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.1.0_1782502884623_0.8915525811754186","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@arsenstorm/olos","version":"0.1.1","license":"MIT","_id":"@arsenstorm/olos@0.1.1","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"f9602f1df7dc5eb6b661e565635d6b51ac92c420","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.1.1.tgz","fileCount":299,"integrity":"sha512-Kxa9pO3PgAdbWLe0Adczmm+XpQHtwYpqTSVOozUZ5tlVIqALkzdoWQVIZDvSlTTGyxzqnl/Wm4grvN/VmDbdug==","signatures":[{"sig":"MEQCIBj4eypIVfPFjGAopytusrlv+SM5J6dLFtEXJHCf1A41AiBAtdCLZe6f2y6fHxwF+dhqxakUp1HnDtoeF+iv5bWbnQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":745686},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"0419c1dd82f2a72bf400668e94e9edd9f60de34d","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"11.13.0","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"24.17.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.1.1_1782507967362_0.4727732842823218","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@arsenstorm/olos","version":"0.2.0","license":"MIT","_id":"@arsenstorm/olos@0.2.0","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"49064a54059e84deeb0afcf4942b2e806302f3da","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.2.0.tgz","fileCount":293,"integrity":"sha512-S18JpIyeSrWM4McWWHJBFJGknFP0Z9YAc05zOHjOkJhNSj5HdP69p+mSce1rTDdW4Qw4OsW3fuQhi17hleoInQ==","signatures":[{"sig":"MEQCIAox1h4I7fCEhmtZ+USrCVZ/iOF8C3g8VLr4LwvuupJ2AiBgTiYeXcH0/nOOEQFE7yt8/x1r9dT3yo2oyouiJ+XohA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":730538},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"c9e16f1aa1f39daeacfef7955bce80a28671dfe6","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"11.13.0","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"24.17.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.2.0_1782566682988_0.8177683382362242","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@arsenstorm/olos","version":"0.3.0","license":"MIT","_id":"@arsenstorm/olos@0.3.0","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"6b11947699dd15ce9d111049afde229bdafb70e1","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.3.0.tgz","fileCount":293,"integrity":"sha512-QDbfQ4vxsSV6CQLjmKfyIZ4Qs9mgD+PB35ilnYkdDbqF662ouxmrBeVS8HsOdRwSNYYjs6pvsRZUcol4JN4tqA==","signatures":[{"sig":"MEUCIQCdQXWuRMX8pU73yoNoiC/L5oGFw3rqAHwJ2Gku3WtWwwIgfjhPdq1f4Zayyn5+xbC0GJ9Udo2HaTdOt4iBBG25WRg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":734951},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"8e1b982107a5f71dcdda5ca6d3f1552a45d1ef96","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"11.13.0","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"24.17.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.3.0_1782578741997_0.8844276147359984","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@arsenstorm/olos","version":"0.4.0","license":"MIT","_id":"@arsenstorm/olos@0.4.0","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"3027ec810eea1579f0ade510064cd716e6752ec2","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.4.0.tgz","fileCount":293,"integrity":"sha512-4KuW+DdvrYlWm80SuAh7EF/B+i/sv93HlojM6zUKGF/v+wfNNs2DVxgXoFihbMIroiVXXM8WFgC8B8Ca44JT0A==","signatures":[{"sig":"MEUCIQCoclqESKJQOA5ScvIklUwHRP4EMkzKu49XyGf9t4wnowIgJZ8dsrROh5SF9OWi4SF4JPj7SmZDNPEJXzbwzMHEC0g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":735413},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"5a4004858de38c4ef175f74718cc6189ad12c97e","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"11.13.0","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"24.17.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.4.0_1782589019487_0.28529842125428484","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@arsenstorm/olos","version":"0.5.1","license":"MIT","_id":"@arsenstorm/olos@0.5.1","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"homepage":"https://github.com/arsenstorm/olos#readme","bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"dist":{"shasum":"8713acd5884f2faa6b08fc48c826e2f132ea2dc7","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.5.1.tgz","fileCount":293,"integrity":"sha512-AYC92QVLSYChbyQMnUNuSTR/Zj6fa0UwMImwdNlYdgd2mcLtLDGykVB0fyJvwXiGi2NJn2AZr6UyaZBEt//ReA==","signatures":[{"sig":"MEUCIQC0om2dNY63haBS9KDqT0xBjDnBB2scOOUf5k3RgkAw5QIgB4yXUef18w5gk3XtPsvTe1rYO0agkWiSDKbmDfe6Ebk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":744833},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./package.json":"./package.json"},"gitHead":"64d0cae08744131e6ec5b8288c9717b119c03c29","scripts":{"test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","pack:dry":"bun scripts/dry-pack.ts","test:e2e":"bun run build && vitest run --config vitest.e2e.config.ts","pack:smoke":"bun run build && bun scripts/package-smoke.ts","check-types":"tsc --project tsconfig.json --noEmit","test:live-s3":"bun run build && vitest run --config vitest.live-s3.config.ts","pack:artifact":"bun run build && bun scripts/create-package-artifact.ts","publish:check":"bun run release:verify-changelog && bun run release:notes && bun run conformance:check && bun run check-types && bun run test && bun run test:e2e && bun run build && bun run pack:dry && bun run pack:smoke","release:notes":"bun scripts/write-release-notes.ts","prepublishOnly":"bun run publish:check","conformance:check":"bun scripts/check-conformance.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","conformance:report":"bun scripts/write-conformance-report.ts","release:verify-tag":"bun scripts/verify-release-tag.ts","release:verify-changelog":"bun scripts/verify-release-changelog.ts","release:verify-published":"bun scripts/verify-published-package.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"repository":{"url":"git+https://github.com/arsenstorm/olos.git","type":"git","directory":"olos"},"_npmVersion":"11.13.0","description":"Open Live Object Streaming protocol primitives.","directories":{},"sideEffects":false,"_nodeVersion":"24.17.0","dependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.17.1","vitest":"^4.1.8"},"_npmOperationalInternal":{"tmp":"tmp/olos_0.5.1_1782814255859_0.7939208250357981","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@arsenstorm/olos","version":"0.6.0","description":"Open Live Object Streaming protocol primitives.","type":"module","license":"MIT","sideEffects":false,"repository":{"type":"git","url":"git+https://github.com/arsenstorm/olos.git","directory":"olos"},"bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"homepage":"https://github.com/arsenstorm/olos#readme","engines":{"node":">=22"},"main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./config":{"types":"./dist/config.d.ts","import":"./dist/config.js","default":"./dist/config.js"},"./conformance":{"types":"./dist/conformance.d.ts","import":"./dist/conformance.js","default":"./dist/conformance.js"},"./media":{"types":"./dist/media.d.ts","import":"./dist/media.js","default":"./dist/media.js"},"./hls":{"types":"./dist/hls.d.ts","import":"./dist/hls.js","default":"./dist/hls.js"},"./protocol":{"types":"./dist/protocol.d.ts","import":"./dist/protocol.js","default":"./dist/protocol.js"},"./runtime":{"types":"./dist/runtime.d.ts","import":"./dist/runtime.js","default":"./dist/runtime.js"},"./schema":{"types":"./dist/schema.d.ts","import":"./dist/schema.js","default":"./dist/schema.js"},"./s3":{"types":"./dist/s3.d.ts","import":"./dist/s3.js","default":"./dist/s3.js"},"./state":{"types":"./dist/state.d.ts","import":"./dist/state.js","default":"./dist/state.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","default":"./dist/types.js"},"./validation":{"types":"./dist/validation.d.ts","import":"./dist/validation.js","default":"./dist/validation.js"},"./package.json":"./package.json"},"scripts":{"build":"bun scripts/clean-dist.ts && tsc --project tsconfig.build.json && bun scripts/fix-declaration-imports.ts","check-types":"tsc --project tsconfig.json --noEmit","check-types:dist":"tsc --project tsconfig.e2e.json --noEmit","conformance:check":"bun scripts/check-conformance.ts && bun scripts/check-spec-refs.ts","conformance:report":"bun scripts/write-conformance-report.ts","pack:artifact":"bun scripts/require-dist.ts && bun scripts/create-package-artifact.ts","pack:check":"publint --strict && bun scripts/attw-check.ts","pack:smoke":"bun scripts/require-dist.ts && bun scripts/package-smoke.ts","publish:check":"bun run conformance:check && bun run check-types && bun run test && bun run build && bun run check-types:dist && bun run test:e2e && bun run pack:check && bun run pack:smoke","release:verify-published":"bun scripts/verify-published-package.ts","report:file-sizes":"bun scripts/report-file-sizes.ts","spec:generate":"bun scripts/write-spec-schemas.ts && bun scripts/write-conformance-report.ts","test":"bun test src scripts --pass-with-no-tests --path-ignore-patterns 'e2e/**' --path-ignore-patterns '**/*.e2e.test.ts'","test:e2e":"bun scripts/require-dist.ts && vitest run --config vitest.e2e.config.ts","test:live-s3":"vitest run --config vitest.live-s3.config.ts"},"devDependencies":{"@arethetypeswrong/cli":"^0.18.5","@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0","ajv":"^8.17.1","ajv-formats":"^3.0.1","publint":"^0.3.22","typescript":"^5","vitest":"^4.1.8"},"peerDependencies":{"@aws-sdk/client-s3":"^3.1066.0","@aws-sdk/s3-request-presigner":"^3.1066.0"},"peerDependenciesMeta":{"@aws-sdk/client-s3":{"optional":true},"@aws-sdk/s3-request-presigner":{"optional":true}},"gitHead":"79465e4bc5739f2852d0d76407253d3240697821","_id":"@arsenstorm/olos@0.6.0","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-sjQPZguIZevYkqmpFJDsTyrK1OO0yksLEuHOB5hegoGdlMsEobZW5PpXaeV+FxCOl7idAsOjn+hdqqk595UGPw==","shasum":"022eb7ff74dfd6d17a895f4160b04718ca3fc7d5","tarball":"https://registry.npmjs.org/@arsenstorm/olos/-/olos-0.6.0.tgz","fileCount":368,"unpackedSize":1216892,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arsenstorm%2folos@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIA/kAehvcd77MKVeCWnSoQhiuK0su1YEM+DiUzTF7G8HAiEA1QYzDRqXGPtwLAOMTj6L+uzLJ5pt1377S4Ofy40zcN8="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f2ea0ecb-6653-423d-9c04-1c07530d5021"}},"directories":{},"maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/olos_0.6.0_1787435557375_0.039408312304928694"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-26T19:41:24.415Z","modified":"2026-08-22T21:52:37.836Z","0.1.0":"2026-06-26T19:41:24.773Z","0.1.1":"2026-06-26T21:06:07.515Z","0.2.0":"2026-06-27T13:24:43.120Z","0.3.0":"2026-06-27T16:45:42.168Z","0.4.0":"2026-06-27T19:36:59.628Z","0.5.1":"2026-06-30T10:10:55.995Z","0.6.0":"2026-08-22T21:52:37.518Z"},"bugs":{"url":"https://github.com/arsenstorm/olos/issues"},"license":"MIT","homepage":"https://github.com/arsenstorm/olos#readme","repository":{"type":"git","url":"git+https://github.com/arsenstorm/olos.git","directory":"olos"},"description":"Open Live Object Streaming protocol primitives.","maintainers":[{"name":"arsenstorm","email":"arsen@shkrumelyak.com"}],"readme":"# OLOS\n\n[![Socket](https://socket.dev/api/badge/npm/package/@arsenstorm/olos)](https://socket.dev/npm/package/@arsenstorm/olos)\n[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/arsenstorm/olos/badge)](https://scorecard.dev/viewer/?uri=github.com/arsenstorm/olos)\n\nOpen Live Object Streaming protocol primitives. A generic live object\nstreaming protocol: a low-latency append-only stream log over plain object\nstorage (S3, R2, GCS), with CMAF/LL-HLS as its first profile.\n\n## Install\n\n```bash\nnpm install @arsenstorm/olos\n```\n\n## Imports\n\n```ts\nimport { OLOS_PROTOCOL_NAME, OLOS_WIRE_VERSION } from \"@arsenstorm/olos\";\nimport type { Session } from \"@arsenstorm/olos/types\";\n```\n\n| Subpath | Use for |\n| --- | --- |\n| `@arsenstorm/olos/runtime` | Session routes, publisher loops, HLS serving. |\n| `@arsenstorm/olos/s3` | S3 upload grants, observation, events, recovery, retention. Needs `@aws-sdk/client-s3` and `@aws-sdk/s3-request-presigner` installed by the consumer (optional peer dependencies). |\n| `@arsenstorm/olos/media` | CMAF/LL-HLS profile: media session/track/object profiles, validators, schemas, publisher pacing. |\n| `@arsenstorm/olos/hls` | HLS rendering and blocking-reload helpers. |\n| `@arsenstorm/olos/protocol` | Coordinator stores and adapter conformance. |\n| `@arsenstorm/olos/state` | Lower-level state transitions and policies. |\n| `@arsenstorm/olos/schema` | JSON Schemas for wire objects. |\n| `@arsenstorm/olos/validation` | Runtime payload validators. |\n| `@arsenstorm/olos/types` | Public protocol data types. |\n| `@arsenstorm/olos/config` | Protocol constants and policy defaults. |\n| `@arsenstorm/olos/conformance` | Assertion metadata and store checks. |\n\n## Quick start\n\nA complete OLOS endpoint with S3-backed live media (the CMAF/LL-HLS profile):\n\n```ts\nimport {\n  createMemorySerializedCoordinatorStoreBackend,\n  createSerializedCoordinatorStore,\n} from \"@arsenstorm/olos/protocol\";\nimport { createStoredS3CoordinatorRuntimeHandler } from \"@arsenstorm/olos/s3\";\nimport { S3Client } from \"@aws-sdk/client-s3\";\n\nconst store = createSerializedCoordinatorStore(\n  createMemorySerializedCoordinatorStoreBackend()\n);\n\nconst s3 = new S3Client({ region: \"us-east-1\" });\n\nconst handleOlos = createStoredS3CoordinatorRuntimeHandler({\n  allowedDeliveryOrigins: [\"https://media.example.com\"],\n  bucket: \"olos-media\",\n  client: s3,\n  expiresInSeconds: 5,\n  providerId: \"s3_primary\",\n  store,\n});\n\nexport default { fetch: (req: Request) => handleOlos(req) };\n```\n\nPublishers create a session, then loop: get a presigned slot, PUT media bytes\nto S3, post a commit. Viewers GET HLS manifests. The handler covers it.\n\nA session declares the profile it runs under and a profile per track. Core\ntreats `profile` objects as opaque; `@arsenstorm/olos/media` defines and\nvalidates the CMAF/LL-HLS ones:\n\n```ts\nimport { CMAF_LLHLS_PROFILE_ID } from \"@arsenstorm/olos/media\";\n\nawait fetch(\"https://olos.example.com/sessions\", {\n  body: JSON.stringify({\n    deliveryBaseUrl: \"https://media.example.com\",\n    session: {\n      createdAt: new Date().toISOString(),\n      epoch: 1,\n      olos: \"1.0\",\n      profile: { id: CMAF_LLHLS_PROFILE_ID, partTarget: 0.5, segmentTarget: 2 },\n      sessionId: \"session_1\",\n      state: \"live\",\n      tracks: [\n        {\n          profile: { bitrate: 5_000_000, codec: \"avc1.640028\", kind: \"video\" },\n          trackId: \"v1080\",\n        },\n      ],\n    },\n  }),\n  headers: { \"content-type\": \"application/json\" },\n  method: \"POST\",\n});\n```\n\nSlot requests and commits carry the same kind of opaque `profile` object\n(for LL-HLS: `{ duration, independent, programDateTime }`).\n\nWorking setups:\n\n- [examples/api](https://github.com/arsenstorm/olos/tree/main/examples/api) — Cloudflare Worker + Durable Object + R2.\n- [examples/streamer](https://github.com/arsenstorm/olos/tree/main/examples/streamer) — OBS-to-OLOS bridge using ffmpeg micro-segments.\n- [examples/player](https://github.com/arsenstorm/olos/tree/main/examples/player) — LL-HLS player at the PART-HOLD-BACK spec floor.\n\n## Routes\n\nThe handler mounts:\n\n| Method | Path | Purpose |\n| --- | --- | --- |\n| `POST` | `/sessions` | Create a session. |\n| `POST` | `/sessions/:id/s3/slots` | Issue a presigned upload slot. |\n| `POST` | `/sessions/:id/s3/commits` | Observe and commit an upload. |\n| `POST` | `/sessions/:id/s3/events` | Accept S3 object-created events. |\n| `POST` | `/sessions/:id/s3/reconcile-plan` | List in-flight slots for recovery. |\n| `POST` | `/sessions/:id/s3/reconcile` | Recover slots after missed events. |\n| `POST` | `/sessions/:id/s3/retention` | Prune retired state and delete retired media. |\n| `POST` | `/sessions/:id/upload-slots/:slotId/complete` | Publisher completion hint (alternative to waiting for events). |\n| `POST` | `/sessions/:id/transition` | Advance session state. |\n| `POST` | `/sessions/:id/heartbeat` | Publisher liveness ping. |\n| `GET` | `/sessions/:id/health` | Live / starting / stale summary. |\n| `GET` | `/v1/live/:id/master.m3u8` | Master playlist (variants, audio groups). |\n| `GET` | `/v1/live/:id/.../media.m3u8` | LL-HLS playlist with `_HLS_msn` blocking reload. |\n\nThe `/sessions` and `/v1/live` prefixes are the defaults. The handler's\n`sessionPath` and `livePath` options configure them. Error responses always\ncarry `error.code` from the registered `OLOS_ERROR_CODES` set, next to\n`error.message`.\n\n## Layers\n\nOLOS is layered. Core defines the commit semantics. Above it are a profile\n(the CMAF/LL-HLS profile ships in `@arsenstorm/olos/media` and\n`@arsenstorm/olos/hls`), a storage binding (`@arsenstorm/olos/s3`), a\ndelivery mapping, the direct-public deployment profile, and runtime\nguidance. [Spec Section\n2](https://github.com/arsenstorm/olos/blob/main/spec/02-architecture.md)\ndefines the layers and the split between what OLOS owns and what your app\nowns.\n\n## Further reading\n\n- [Production pipeline](https://github.com/arsenstorm/olos/blob/main/contributing/core/production-pipeline.md) — wiring a real deployment.\n- [Store adapters](https://github.com/arsenstorm/olos/blob/main/contributing/core/store-adapters.md) — coordinator store on SQL, KV, or Durable Objects.\n- [Direct-public deployment](https://github.com/arsenstorm/olos/blob/main/contributing/core/direct-public-deployment.md) — when uploaded media is readable before the manifest gates it.\n- [Conformance](https://github.com/arsenstorm/olos/blob/main/contributing/core/conformance.md) — assertion catalogue covering the protocol surface.\n\n## Release check\n\n```bash\nbun --filter '@arsenstorm/olos' publish:check\n```\n","readmeFilename":"README.md"}