{"_id":"@a11yst/artifacts","_rev":"3-19e9bf2445990afa8c1eb87262bf73c1","name":"@a11yst/artifacts","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@a11yst/artifacts","version":"1.0.0","license":"MPL-2.0","_id":"@a11yst/artifacts@1.0.0","maintainers":[{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"}],"homepage":"https://github.com/angelabenavente/a11yst#readme","bugs":{"url":"https://github.com/angelabenavente/a11yst/issues"},"dist":{"shasum":"06d3ed08c2be3ed3194447b06248a1018bef84bf","tarball":"https://registry.npmjs.org/@a11yst/artifacts/-/artifacts-1.0.0.tgz","fileCount":23,"integrity":"sha512-NgQAoR65+EWq5AdL49i6kiZJL0EwuFXlX46aNAq09WUrZp1sYQDyUSK/LsyvH8Se138QY/pl+Xc4bl393JC2EA==","signatures":[{"sig":"MEUCIBDoFj4tpL8BPGOEYGVDZakUzq7/Zw7ZmeOhcsVVSASlAiEA6NFxkobH1oHXpJP1Gqs1T1CCjNL3BvSCaE2HZQSRY0w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99343},"main":"./dist/index.js","type":"module","_from":"file:a11yst-artifacts-1.0.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.json","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"},"_resolved":"/private/var/folders/tf/l5jz90dj0yncc_ds04tbfs5c0000gn/T/156401cb7ecd6d4c759c46839a2faed0/a11yst-artifacts-1.0.0.tgz","_integrity":"sha512-NgQAoR65+EWq5AdL49i6kiZJL0EwuFXlX46aNAq09WUrZp1sYQDyUSK/LsyvH8Se138QY/pl+Xc4bl393JC2EA==","repository":{"url":"git+https://github.com/angelabenavente/a11yst.git","type":"git"},"_npmVersion":"10.9.0","description":"Safe artifact bundle writing for a11yst audits","directories":{},"_nodeVersion":"22.12.0","dependencies":{"@a11yst/types":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2"},"_npmOperationalInternal":{"tmp":"tmp/artifacts_1.0.0_1787506219803_0.09688215274313583","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@a11yst/artifacts","version":"1.0.1","license":"MPL-2.0","_id":"@a11yst/artifacts@1.0.1","maintainers":[{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"}],"homepage":"https://github.com/angelabenavente/a11yst#readme","bugs":{"url":"https://github.com/angelabenavente/a11yst/issues"},"dist":{"shasum":"7f12f0ee22a3b58d6f22aece2d317ece9316c11e","tarball":"https://registry.npmjs.org/@a11yst/artifacts/-/artifacts-1.0.1.tgz","fileCount":23,"integrity":"sha512-+FPw1ddaii7JSJz8X5mBDPMtbpYMqfHik1YLU4njqsrjNkRAxyHFvPfnktr8BlUfoi1pgaVqw7urrg0DxhbWeA==","signatures":[{"sig":"MEUCIBZ3fSiX41fkE+EYez9OS7bmaP8Kst9Q+uhgu1MjUa5FAiEA96aOT8FF+xetLa2GjlWjCHCzs4dNItMOuD3rmLnQM88=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99343},"main":"./dist/index.js","type":"module","_from":"file:a11yst-artifacts-1.0.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.json","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"},"_resolved":"/private/var/folders/tf/l5jz90dj0yncc_ds04tbfs5c0000gn/T/0cd4c0473099ec4146b1d1b87c192cac/a11yst-artifacts-1.0.1.tgz","_integrity":"sha512-+FPw1ddaii7JSJz8X5mBDPMtbpYMqfHik1YLU4njqsrjNkRAxyHFvPfnktr8BlUfoi1pgaVqw7urrg0DxhbWeA==","repository":{"url":"git+https://github.com/angelabenavente/a11yst.git","type":"git"},"_npmVersion":"10.9.8","description":"Safe artifact bundle writing for a11yst audits","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@a11yst/types":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2"},"_npmOperationalInternal":{"tmp":"tmp/artifacts_1.0.1_1787508654487_0.7255556571275494","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@a11yst/artifacts","version":"1.0.2","description":"Safe artifact bundle writing for a11yst audits","type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"main":"./dist/index.js","types":"./dist/index.d.ts","dependencies":{"@a11yst/types":"1.0.2"},"devDependencies":{"typescript":"^5.7.2"},"license":"MPL-2.0","repository":{"type":"git","url":"git+https://github.com/angelabenavente/a11yst.git"},"homepage":"https://www.a11yst.dev","bugs":{"url":"https://github.com/angelabenavente/a11yst/issues"},"publishConfig":{"access":"public"},"scripts":{"build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","clean":"rm -rf dist *.tsbuildinfo"},"_id":"@a11yst/artifacts@1.0.2","_integrity":"sha512-WrItP9bwu1b0EwsslSyo7fB7+1sl9GyxuL4ZseEnf9+zbVRUKsRNEGtlJyHX1tFofGq1TcezXJitUmUl0xKi9g==","_resolved":"/private/var/folders/tf/l5jz90dj0yncc_ds04tbfs5c0000gn/T/4fa1c57c4dc37f461d818bfe6fa373dd/a11yst-artifacts-1.0.2.tgz","_from":"file:a11yst-artifacts-1.0.2.tgz","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-WrItP9bwu1b0EwsslSyo7fB7+1sl9GyxuL4ZseEnf9+zbVRUKsRNEGtlJyHX1tFofGq1TcezXJitUmUl0xKi9g==","shasum":"dc6db14b7357402823afc6b87ac3d91e0fd0db49","tarball":"https://registry.npmjs.org/@a11yst/artifacts/-/artifacts-1.0.2.tgz","fileCount":23,"unpackedSize":99671,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCYyWpIeF8vnHVO/O3JQfCWzYbwEPSfqpDXDdbN6+EdBwIgNLyiV/LEMvbi40ovvLmuDaAgC7sBKqk12GQooO8qfqI="}]},"_npmUser":{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"},"directories":{},"maintainers":[{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/artifacts_1.0.2_1787683091228_0.20408685243315317"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-23T17:30:19.679Z","modified":"2026-08-25T18:38:11.552Z","1.0.0":"2026-08-23T17:30:19.950Z","1.0.1":"2026-08-23T18:10:54.621Z","1.0.2":"2026-08-25T18:38:11.355Z"},"bugs":{"url":"https://github.com/angelabenavente/a11yst/issues"},"license":"MPL-2.0","homepage":"https://www.a11yst.dev","repository":{"type":"git","url":"git+https://github.com/angelabenavente/a11yst.git"},"description":"Safe artifact bundle writing for a11yst audits","maintainers":[{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"}],"readme":"# `@a11yst/artifacts` [![NPM version](https://img.shields.io/npm/v/@a11yst/artifacts.svg?style=flat)](https://www.npmjs.com/package/@a11yst/artifacts) [![License: MPL-2.0](https://img.shields.io/badge/License-MPL--2.0-blue.svg)](LICENSE) [![NPM total downloads](https://img.shields.io/npm/dt/@a11yst/artifacts.svg?style=flat)](https://www.npmjs.com/package/@a11yst/artifacts)\n\nSafe, portable persistence for a11yst audit bundles.\n\n## Public API\n\n- `createArtifactWriter(options)` / `ArtifactWriter` create a\n  `runs/<auditId>/` bundle, write JSON/binary evidence/report assets, finalize\n  `manifest.json` and `results.json`, and atomically update `latest.json`.\n- `createAuditId(options)` creates a timestamp-plus-entropy bundle ID.\n  Supplying deterministic time/entropy is intended for tests only.\n- `sanitizePathSegment(value, options)` creates a portable path segment.\n- `stableStringify(value)` serializes supported JSON values with stable key\n  ordering and a trailing newline.\n\nThe audit ID identifies one persisted bundle. It is not a run ID or finding ID.\nManifest and result paths are bundle-relative; `latest.json` paths are relative\nto the output root.\n\n## Security and privacy\n\nThe writer rejects absolute/traversing/non-portable bundle paths and existing\nsymbolic links, verifies writes remain below the artifact root, uses atomic\ntemporary-file replacement, and creates written files with owner-only\npermissions where supported. These controls do not make captured content safe\nto publish.\n\nScreenshots and serialized HTML snippets can contain visible or sensitive data.\nCallers must protect `outputDir`, avoid unreviewed publication, and choose their\nown retention and ignore-file policy. The package does not upload artifacts or\nmodify a user's `.gitignore`.\n\n## Accessibility scope\n\nThis package stores evidence; it does not analyze accessibility or establish\nconformance.\n\na11yst does not certify WCAG conformance.\n\nAutomated checks cover only part of accessibility.\n\nManual review and testing with disabled users remain necessary.\n","readmeFilename":"README.md"}