{"_id":"@a11yst/junit","_rev":"3-3a7479e50456d4986c7f79c9ff77456d","name":"@a11yst/junit","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@a11yst/junit","version":"1.0.0","license":"MPL-2.0","_id":"@a11yst/junit@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":"32e9da0e783190e316ccda8dff140e3dad4a6cf6","tarball":"https://registry.npmjs.org/@a11yst/junit/-/junit-1.0.0.tgz","fileCount":51,"integrity":"sha512-MTRWcrJKDMgoDqNpzmgirkSBWTPWWQ+7rciEEHekCCVdDR8QQS03S5XTzeg54VZ4NG4LtVzamY1aTR8HH8NBvQ==","signatures":[{"sig":"MEQCIGVmZAotBBtAftsT5GdBYedq9AAwOgE13G4pDMb2n4m9AiByVfH2+LKfnOtq1pqHLO3shEC3zcYUFmVjAZZWRWkhdA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85821},"main":"./dist/index.js","type":"module","_from":"file:a11yst-junit-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/0fed4d968899ed25c3ef83995b151c94/a11yst-junit-1.0.0.tgz","_integrity":"sha512-MTRWcrJKDMgoDqNpzmgirkSBWTPWWQ+7rciEEHekCCVdDR8QQS03S5XTzeg54VZ4NG4LtVzamY1aTR8HH8NBvQ==","repository":{"url":"git+https://github.com/angelabenavente/a11yst.git","type":"git"},"_npmVersion":"10.9.0","description":"Pure JUnit XML generation for a11yst audit results","directories":{},"_nodeVersion":"22.12.0","dependencies":{"@a11yst/types":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2"},"_npmOperationalInternal":{"tmp":"tmp/junit_1.0.0_1787506227710_0.03191468171251688","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@a11yst/junit","version":"1.0.1","license":"MPL-2.0","_id":"@a11yst/junit@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":"cc22ecf6f7f4b95c6aee5d61e9c41a71150e001a","tarball":"https://registry.npmjs.org/@a11yst/junit/-/junit-1.0.1.tgz","fileCount":51,"integrity":"sha512-Zhp3qF9074Vms7/08UOwBFF0I/4Hoah2yltesqU9VmaIzsSXe9GJc+KLpOfqZ683mAHl7BR5JgDyZcTFzXqduw==","signatures":[{"sig":"MEYCIQCiACM1iwqe/v5TfkgDwjOTDJw9hszLUzRQHLryUojPcAIhAONuXrkd+H7Qd7kwpg6+ifJVI9Wy2i2wFxi/JKGL5sBP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85821},"main":"./dist/index.js","type":"module","_from":"file:a11yst-junit-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/6bc0304c59f2c3278e63b38f9828589e/a11yst-junit-1.0.1.tgz","_integrity":"sha512-Zhp3qF9074Vms7/08UOwBFF0I/4Hoah2yltesqU9VmaIzsSXe9GJc+KLpOfqZ683mAHl7BR5JgDyZcTFzXqduw==","repository":{"url":"git+https://github.com/angelabenavente/a11yst.git","type":"git"},"_npmVersion":"10.9.8","description":"Pure JUnit XML generation for a11yst audit results","directories":{},"_nodeVersion":"22.23.1","dependencies":{"@a11yst/types":"1.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2"},"_npmOperationalInternal":{"tmp":"tmp/junit_1.0.1_1787508662053_0.44049245443904894","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@a11yst/junit","version":"1.0.2","description":"Pure JUnit XML generation for a11yst audit results","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/junit@1.0.2","_integrity":"sha512-ckekVKuhW3nhiHS4TVEB4bIDG7K80+6Yz2KBVhvDP+D/XXqoIXTTAMwfGz6uMKa/Ns6xclnCT85d4NrSklrKag==","_resolved":"/private/var/folders/tf/l5jz90dj0yncc_ds04tbfs5c0000gn/T/5323a63c33d22246e92d126838ffd5a4/a11yst-junit-1.0.2.tgz","_from":"file:a11yst-junit-1.0.2.tgz","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-ckekVKuhW3nhiHS4TVEB4bIDG7K80+6Yz2KBVhvDP+D/XXqoIXTTAMwfGz6uMKa/Ns6xclnCT85d4NrSklrKag==","shasum":"308049da91a5429e808de0d7401282fdf95d79f3","tarball":"https://registry.npmjs.org/@a11yst/junit/-/junit-1.0.2.tgz","fileCount":51,"unpackedSize":86133,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIG6v7tF5bzuj6laznSd8krmKLt6Z8snvzfKcYwzADLL4AiBq55w153TFQJKrswX7VMW38RR7lF8W9NMmQzOGNzDa7g=="}]},"_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/junit_1.0.2_1787683099786_0.8331117029104942"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-23T17:30:27.511Z","modified":"2026-08-25T18:38:20.103Z","1.0.0":"2026-08-23T17:30:27.849Z","1.0.1":"2026-08-23T18:11:02.240Z","1.0.2":"2026-08-25T18:38:19.934Z"},"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":"Pure JUnit XML generation for a11yst audit results","maintainers":[{"name":"angelabenavente","email":"ang.ben.dev@gmail.com"}],"readme":"# @a11yst/junit [![NPM version](https://img.shields.io/npm/v/@a11yst/junit.svg?style=flat)](https://www.npmjs.com/package/@a11yst/junit) [![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/junit.svg?style=flat)](https://www.npmjs.com/package/@a11yst/junit)\n\nPure, deterministic JUnit XML generation for a11yst audit results.\n\n## Subset\n\nThis package emits a conservative JUnit XML subset widely accepted by CI systems:\n\n- XML 1.0 declaration with UTF-8 encoding\n- Root `<testsuites>` with aggregate counts and time\n- Nested `<testsuite>` elements (one per audited project)\n- `<testcase>`, `<failure>`, `<error>`, `<skipped>`, and `<properties>`\n- Optional `<system-out>` / `<system-err>` only when they add safe summaries\n\nNo proprietary namespaces or extensions are required for core semantics.\n\n## Suite strategy\n\n- One suite per project: `a11yst / {projectName}` (or `a11yst / default`)\n- Test cases represent audit runs, flow checkpoints, policy breaches, and operational errors — not individual findings\n\n## Failure vs error\n\n| Situation | JUnit element |\n|-----------|---------------|\n| CI policy breach | `<failure type=\"a11ystPolicyBreach\">` |\n| Policy could not be evaluated | `<error type=\"a11ystPolicyNotEvaluated\">` |\n| Audit run failed operationally | `<error type=\"a11ystOperationalError\">` |\n| Audit run skipped | `<skipped>` |\n| Known / resolved / not-compared finding | Properties only — not a failure |\n\n## Paths\n\n- Bundle artifact: `reports/a11yst.junit.xml`\n- Enable with `a11yst audit --junit` or `reports.junit` in config\n- Custom copy: `a11yst audit --junit-output <path>`\n\n## Report from results\n\n```bash\na11yst report --from ./path/to/results.json --format junit --output ./a11yst.junit.xml\n```\n\nReads stored `policyEvaluation`, runs, and lifecycle metadata. Does not re-run audit, baseline comparison, or policy evaluation.\n\n## Exit codes\n\nJUnit generation does not change a11yst exit codes (`0` passed/disabled, `1` operational/not-evaluated, `2` policy failed). JUnit is written before the process exits when a valid audit result exists.\n\n## Not included (Phase 9e)\n\n- Markdown reporter\n- GitHub / GitLab CI integrations\n- Uploads and PR comments\n- Source mapping\n","readmeFilename":"README.md"}