{"_id":"swarm-orchestrator","_rev":"17-d56bc879c72b1635006a0e4959702120","name":"swarm-orchestrator","dist-tags":{"alpha":"7.0.0-alpha.0","latest":"14.4.0"},"versions":{"7.0.0-alpha.0":{"name":"swarm-orchestrator","version":"7.0.0-alpha.0","keywords":["cli","falsification","attestation","verification","quality-gates","orchestrator","agent-orchestrator","swarm","ai","swe-bench","copilot","copilot-cli","claude-code","codex"],"author":{"name":"Bradley R. Kinnard"},"license":"ISC","_id":"swarm-orchestrator@7.0.0-alpha.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/src/cli.js","swarm-orchestrator":"dist/src/cli.js"},"dist":{"shasum":"3f1145976c3cfb60f9fa3e3e51fd4715657582f0","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-7.0.0-alpha.0.tgz","fileCount":174,"integrity":"sha512-Xom/I5HjJg4MWkGj59BnVF0/MqPaVFoZn+gv0GlLCNW5yGtY9t7tS/XyvBpMs246Rl8Ih+8WeKbKWYvtvtdiCg==","signatures":[{"sig":"MEUCIQDHeFk1xvhKDQp1ft2kTnHoPO0SU12P7SPmr4RqjWL0cAIgGeOo/6zXJpQNOlSpEu9kEjCfO7YvKqedPCVF7DUygTc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1171064},"main":"dist/src/index.js","type":"commonjs","engines":{"node":">=20.0.0"},"gitHead":"4d38f8a7e7a5aaaafe473f06c36b95c165b3e6e9","scripts":{"lint":"eslint 'src/**/*.{ts,tsx}' 'test/**/*.ts'","test":"npm run build && mocha --recursive 'dist/test/**/*.test.js'","build":"tsc -p tsconfig.build.json && node -e \"require('fs').chmodSync('dist/src/cli.js', 0o755)\"","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/src/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'test/**/*.ts'","test:ci":"mocha --recursive 'dist/test/**/*.test.js'","lint:fix":"eslint --fix 'src/**/*.{ts,tsx}' 'test/**/*.ts'","prebuild":"npm run clean","typecheck":"tsc --noEmit -p tsconfig.build.json","build-plugin":"node scripts/build-plugin.js","format:check":"prettier --check 'src/**/*.{ts,tsx}' 'test/**/*.ts'","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.6.2","description":"Falsification battery and signed attestation for AI-authored code. Worker and reviewer steps run on isolated branches, each step verified before merge, with audit-ready run artifacts.","directories":{},"_nodeVersion":"24.12.0","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","madge":"^8.0.0","mocha":"^11.7.5","eslint":"^10.2.1","prettier":"^3.8.3","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^25.0.10","@types/mocha":"^10.0.10","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.59.0"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_7.0.0-alpha.0_1777553634668_0.15062666632006927","host":"s3://npm-registry-packages-npm-production"}},"11.2.0":{"name":"swarm-orchestrator","version":"11.2.0","keywords":["code-review","pr-audit","ai-code-gate","cheat-detector","aibom","ai-bom","cyclonedx-ml","spdx-ai","merge-gate","github-action","eu-ai-act","cisa-sbom","claude-code","cursor","devin","aider","codex","copilot","openhands","attestation","verification","swarm"],"author":{"name":"Bradley R. Kinnard"},"license":"ISC","_id":"swarm-orchestrator@11.2.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/src/cli.js","swarm-audit":"dist/src/cli.js","swarm-orchestrator":"dist/src/cli.js"},"dist":{"shasum":"9e83a5c4ba30125fcc279ea4838f88781429c4a2","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-11.2.0.tgz","fileCount":248,"integrity":"sha512-t/umfuZMyd263C5QP1mO4I9LRSDPXB0Jysj9RaDkEdTQhgf83S7YVZ37TIGq6H3jtedVd7XlK37mOGCvjTtMsQ==","signatures":[{"sig":"MEUCIEmfzQMIjAa5ijs8xEa+zRYsqZQlI8kKuDOvO2adYC0TAiEAx0d+xsLCzsEtnfntmsnG0OZW/pnona6YkeElXhdFCoI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@11.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1365311},"main":"dist/src/index.js","type":"commonjs","engines":{"node":">=20.0.0"},"gitHead":"eaad2e7988427a11643a1adcafe9b77b27da704e","scripts":{"lint":"eslint 'src/**/*.{ts,tsx}' 'test/**/*.ts'","test":"npm run build && mocha --recursive 'dist/test/**/*.test.js'","build":"tsc -p tsconfig.build.json && node scripts/copy-non-ts-assets.js && node -e \"require('fs').chmodSync('dist/src/cli.js', 0o755)\"","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/src/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'test/**/*.ts'","evasion":"tsc -p tsconfig.build.json && node dist/benchmarks/evasion/evade.js","test:ci":"mocha --recursive 'dist/test/**/*.test.js'","lint:fix":"eslint --fix 'src/**/*.{ts,tsx}' 'test/**/*.ts'","prebuild":"npm run clean","typecheck":"tsc --noEmit -p tsconfig.build.json","leaderboard":"tsc -p tsconfig.build.json && node dist/benchmarks/leaderboard/score.js","badges:check":"tsc -p tsconfig.build.json && node dist/scripts/badges/regen-badges.js --check","badges:regen":"tsc -p tsconfig.build.json && node dist/scripts/badges/regen-badges.js","benefit:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/benefit-full.js","benefit:mine":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/mine-regressions.js","benefit:venn":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/differential-venn.js","build:docker":"tsc -p tsconfig.docker.json && node scripts/copy-non-ts-assets.js && node -e \"require('fs').chmodSync('dist/src/cli.js', 0o755)\"","format:check":"prettier --check 'src/**/*.{ts,tsx}' 'test/**/*.ts'","oracle:build":"tsc -p tsconfig.build.json && node dist/scripts/oracle/build-corpus.js","benefit:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-audit-v2.js","benefit:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-clean-v2.js","real-prs:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/full.js","benefit:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-benefit-report.js","labeling:kappa":"tsc -p tsconfig.build.json && node dist/scripts/labeling/compute-kappa.js","oracle:evasion":"tsc -p tsconfig.build.json && node dist/scripts/oracle/run-evasion.js","prepublishOnly":"npm run build && npm test","real-prs:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-audit.js","real-prs:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-prs.js","benchmarks:full":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/full.js","benefit:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-arbiter-dual.js","calibrate:judge":"tsc -p tsconfig.build.json && node dist/scripts/oracle/calibrate-judge.js","corpus:generate":"tsc -p tsconfig.build.json && node dist/scripts/corpus/generate-v10.js","prebuild:docker":"npm run clean","real-prs:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-report.js","real-prs:sample":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/sample-for-hand-review.js","promotions:check":"node dist/scripts/promotions/check-policy.js","real-prs:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-arbiter.js","benchmarks:oracle":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/run-oracle.js","corpus:score-real":"tsc -p tsconfig.build.json && node dist/scripts/corpus/score-real.js","block-policy:check":"node dist/scripts/gate/check-block-policy.js","promotions:compute":"tsc -p tsconfig.build.json && node dist/scripts/promotions/compute-promotions.js","benchmarks:baseline":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/run-baseline.js","corpus:collect-real":"tsc -p tsconfig.build.json && node dist/scripts/corpus/collect-real.js","agent-incidence:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-agent-prs.js && node dist/scripts/real-prs/audit-agent-prs.js && node dist/scripts/real-prs/arbiter-agent-prs.js && node dist/scripts/real-prs/build-agent-incidence-report.js","benefit:differential":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-differential.js","agent-incidence:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/audit-agent-prs.js","agent-incidence:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-agent-prs.js","agent-incidence:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-agent-incidence-report.js","block-eligibility:full":"tsc -p tsconfig.build.json && node dist/scripts/gate/run-trigger-calibration.js && node dist/scripts/gate/compute-block-eligibility.js","execution-grounded:run":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-execution-grounded.js","agent-incidence:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/arbiter-agent-prs.js","execution-grounded:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-execution-grounded.js && node dist/scripts/real-prs/derive-stryker-viability.js && node dist/scripts/real-prs/correlate-execution-grounded.js","real-prs:arbiter-sanity":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/arbiter-sanity.js","corpus:collect-negatives":"tsc -p tsconfig.build.json && node dist/scripts/corpus/collect-negatives.js","block-eligibility:compute":"tsc -p tsconfig.build.json && node dist/scripts/gate/compute-block-eligibility.js","block-eligibility:calibrate":"tsc -p tsconfig.build.json && node dist/scripts/gate/run-trigger-calibration.js","execution-grounded:correlate":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/correlate-execution-grounded.js","execution-grounded:viability":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/derive-stryker-viability.js"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"overrides":{"serialize-javascript":"^7.0.5"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"10.9.8","description":"Suspicion-score auditor for AI-generated PRs. Advisory-by-default cheat-pattern detection (error-swallow, mock-of-hallucination, no-op-fix, fake-refactor) with measured-precision badges; opt-in merge gate. Emits CycloneDX-ML and SPDX 3.0 AI-Profile artifa","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ajv":"^8.20.0","js-yaml":"^4.1.1","parse-diff":"^0.12.0","typescript":"^5.9.3","@octokit/rest":"^20","@anthropic-ai/sdk":"^0.95.1"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^2.14.6","tsx":"^4.22.1","madge":"^8.0.0","mocha":"^11.7.5","eslint":"^10.4.0","prettier":"^3.8.3","@eslint/js":"^10.0.1","@types/node":"^25.0.10","@types/mocha":"^10.0.10","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.59.3","@stryker-mutator/core":"^9.6.1","eslint-plugin-security":"^3.0.1","eslint-plugin-no-secrets":"^2.3.3","@stryker-mutator/jest-runner":"^9.6.1","@stryker-mutator/mocha-runner":"^9.6.1","@stryker-mutator/vitest-runner":"^9.6.1"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_11.2.0_1781135603154_0.6949484728470625","host":"s3://npm-registry-packages-npm-production"}},"12.0.0":{"name":"swarm-orchestrator","version":"12.0.0","keywords":["code-review","pr-audit","ai-code-gate","cheat-detector","aibom","ai-bom","cyclonedx-ml","spdx-ai","merge-gate","github-action","eu-ai-act","cisa-sbom","claude-code","cursor","devin","aider","codex","copilot","openhands","attestation","verification","swarm"],"author":{"name":"Bradley R. Kinnard"},"license":"ISC","_id":"swarm-orchestrator@12.0.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/src/cli.js","swarm-audit":"dist/src/cli.js","swarm-orchestrator":"dist/src/cli.js"},"dist":{"shasum":"a8a7f7c94f8fa42e2c4e6d7de3e82a55f80671bc","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-12.0.0.tgz","fileCount":261,"integrity":"sha512-ELLnSFKh1Tf9uSTpcheLtEIVe2kKyEUL8M1ZpS7O/KiSrxhEVc7k7mq16h5hLkNBVysbxjJ/bIMP7kGu7JLlog==","signatures":[{"sig":"MEUCIQCaTn1eu8vSnmhUdpL1xgiOKMzwHRyp0C+3rQS4RVLl3QIgd5qepDZ0RyQ7om2CcnfO8YGPqq2yvYiGFi585bo/LxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@12.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1619031},"main":"dist/src/index.js","type":"commonjs","engines":{"node":">=20.0.0"},"gitHead":"dce7de7be645a23d6c615eb072e51fae8f073baf","scripts":{"lint":"eslint 'src/**/*.{ts,tsx}' 'test/**/*.ts'","test":"npm run build && mocha --recursive 'dist/test/**/*.test.js'","build":"tsc -p tsconfig.build.json && node scripts/copy-non-ts-assets.js && node -e \"require('fs').chmodSync('dist/src/cli.js', 0o755)\"","clean":"node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"","start":"node dist/src/cli.js","format":"prettier --write 'src/**/*.{ts,tsx}' 'test/**/*.ts'","evasion":"tsc -p tsconfig.build.json && node dist/benchmarks/evasion/evade.js","test:ci":"mocha --recursive 'dist/test/**/*.test.js'","lint:fix":"eslint --fix 'src/**/*.{ts,tsx}' 'test/**/*.ts'","prebuild":"npm run clean","typecheck":"tsc --noEmit -p tsconfig.build.json","leaderboard":"tsc -p tsconfig.build.json && node dist/benchmarks/leaderboard/score.js","badges:check":"tsc -p tsconfig.build.json && node dist/scripts/badges/regen-badges.js --check","badges:regen":"tsc -p tsconfig.build.json && node dist/scripts/badges/regen-badges.js","benefit:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/benefit-full.js","benefit:mine":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/mine-regressions.js","benefit:venn":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/differential-venn.js","build:docker":"tsc -p tsconfig.docker.json && node scripts/copy-non-ts-assets.js && node -e \"require('fs').chmodSync('dist/src/cli.js', 0o755)\"","format:check":"prettier --check 'src/**/*.{ts,tsx}' 'test/**/*.ts'","oracle:build":"tsc -p tsconfig.build.json && node dist/scripts/oracle/build-corpus.js","benefit:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-audit-v2.js","benefit:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-clean-v2.js","real-prs:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/full.js","benefit:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-benefit-report.js","gate-precision":"tsc -p tsconfig.build.json && node dist/scripts/gate/run-gate-precision.js","labeling:kappa":"tsc -p tsconfig.build.json && node dist/scripts/labeling/compute-kappa.js","oracle:evasion":"tsc -p tsconfig.build.json && node dist/scripts/oracle/run-evasion.js","prepublishOnly":"npm run build && npm test","real-prs:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-audit.js","real-prs:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-prs.js","benchmarks:full":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/full.js","benefit:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-arbiter-dual.js","calibrate:judge":"tsc -p tsconfig.build.json && node dist/scripts/oracle/calibrate-judge.js","corpus:generate":"tsc -p tsconfig.build.json && node dist/scripts/corpus/generate-v10.js","prebuild:docker":"npm run clean","real-prs:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-report.js","real-prs:sample":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/sample-for-hand-review.js","labeling:outcome":"tsc -p tsconfig.build.json && node dist/scripts/labeling/outcome-labels.js","promotions:check":"node dist/scripts/promotions/check-policy.js","real-prs:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-arbiter.js","benchmarks:oracle":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/run-oracle.js","corpus:score-real":"tsc -p tsconfig.build.json && node dist/scripts/corpus/score-real.js","eg-viable:measure":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/eg-viable-measure.js","block-policy:check":"node dist/scripts/gate/check-block-policy.js","promotions:compute":"tsc -p tsconfig.build.json && node dist/scripts/promotions/compute-promotions.js","benchmarks:baseline":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/run-baseline.js","corpus:collect-real":"tsc -p tsconfig.build.json && node dist/scripts/corpus/collect-real.js","eg-viable:aggregate":"node dist/scripts/real-prs/eg-viable-measure.js --aggregate","agent-incidence:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-agent-prs.js && node dist/scripts/real-prs/audit-agent-prs.js && node dist/scripts/real-prs/arbiter-agent-prs.js && node dist/scripts/real-prs/build-agent-incidence-report.js","benefit:differential":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-differential.js","corpus:score-outcome":"tsc -p tsconfig.build.json && node dist/scripts/corpus/score-outcome.js","agent-incidence:audit":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/audit-agent-prs.js","agent-incidence:fetch":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/fetch-agent-prs.js","agent-incidence:report":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/build-agent-incidence-report.js","benchmarks:restoration":"tsc -p tsconfig.build.json && node dist/scripts/benchmarks/run-restoration.js","block-eligibility:full":"tsc -p tsconfig.build.json && node dist/scripts/gate/run-trigger-calibration.js && node dist/scripts/gate/compute-block-eligibility.js","execution-grounded:run":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-execution-grounded.js","agent-incidence:arbiter":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/arbiter-agent-prs.js","execution-grounded:full":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/run-execution-grounded.js && node dist/scripts/real-prs/derive-stryker-viability.js && node dist/scripts/real-prs/correlate-execution-grounded.js","real-prs:arbiter-sanity":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/arbiter-sanity.js","corpus:collect-negatives":"tsc -p tsconfig.build.json && node dist/scripts/corpus/collect-negatives.js","block-eligibility:compute":"tsc -p tsconfig.build.json && node dist/scripts/gate/compute-block-eligibility.js","block-eligibility:calibrate":"tsc -p tsconfig.build.json && node dist/scripts/gate/run-trigger-calibration.js","execution-grounded:correlate":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/correlate-execution-grounded.js","execution-grounded:viability":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/derive-stryker-viability.js","agent-incidence:backward-mine":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/mine-backward.js","agent-incidence:confirmed-bad":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/mine-confirmed-bad.js","execution-grounded:viability-screen":"tsc -p tsconfig.build.json && node dist/scripts/real-prs/eg-viability-screen.js"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"overrides":{"qs":"^6.15.2","diff":"^9.0.0","serialize-javascript":"^7.0.5"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"10.9.8","description":"Suspicion-score auditor for AI-generated PRs. Advisory-by-default cheat-pattern detection (error-swallow, mock-of-hallucination, no-op-fix, fake-refactor) with measured-precision badges; opt-in merge gate. Emits CycloneDX-ML and SPDX 3.0 AI-Profile artifa","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ajv":"^8.20.0","js-yaml":"^4.1.1","parse-diff":"^0.12.0","typescript":"^5.9.3","@octokit/rest":"^20","@anthropic-ai/sdk":"^0.95.1"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^2.14.6","tsx":"^4.22.1","madge":"^8.0.0","mocha":"^11.7.5","eslint":"^10.4.0","prettier":"^3.8.3","@eslint/js":"^10.0.1","@types/node":"^25.0.10","@types/mocha":"^10.0.10","@types/js-yaml":"^4.0.9","typescript-eslint":"^8.59.3","@stryker-mutator/core":"^9.6.1","eslint-plugin-security":"^3.0.1","eslint-plugin-no-secrets":"^2.3.3","@stryker-mutator/jest-runner":"^9.6.1","@stryker-mutator/mocha-runner":"^9.6.1","@stryker-mutator/vitest-runner":"^9.6.1"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_12.0.0_1781301181632_0.1196659923939567","host":"s3://npm-registry-packages-npm-production"}},"13.1.3":{"name":"swarm-orchestrator","version":"13.1.3","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.3","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"e6af5e07c3ff79a206f3c8de1129967133e86612","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.3.tgz","fileCount":268,"integrity":"sha512-E6v1IxrZP0JQAJLK3vQwlyh5akk4YgfPkyiV6oOQicw7l99/0YBsYiUO8G1MeEzT+JSQQPK7TJSdZTEPlrKEhw==","signatures":[{"sig":"MEYCIQDcEaLeXDd1KaUm4LAUtGcCTbbhfM9y7Q14T9V/XKNNkQIhAIGvqZxCDDBC6VgkqeUqK4IMVfvoiBDb8jr8jjEm2b7T","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1268609},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"31e7ca1aedf7b2d5044f0c134841dfc5d46c6db9","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.3_1787589453127_0.49492047113976634","host":"s3://npm-registry-packages-npm-production"}},"13.1.4":{"name":"swarm-orchestrator","version":"13.1.4","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.4","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"b00aa5e6a4dde1140f103b26ce55e9cd1347351b","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.4.tgz","fileCount":268,"integrity":"sha512-GQZ+6HTiAw0a2R4if8fvPauNMqMu54pA2et0wd0H5RZPp4TtOwcGvw8miwloaP+R69rB2+JrGJ3Ig1g+dPLi5w==","signatures":[{"sig":"MEUCIQD895TAbN3YSge7jAcQpXEkNWzvE3f0Stw6+tCYxj1xbQIgOJOIC1jOwvzg3fb5gDftWO3+sj0Ep0puFUcLrLiDvog=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1271118},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"363cdadacf9acc245302d9c958bd74a5c307d0ef","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.4_1787601103961_0.265102388794918","host":"s3://npm-registry-packages-npm-production"}},"13.1.5":{"name":"swarm-orchestrator","version":"13.1.5","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.5","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"ca142cd0268d90c0b5a1743c5846b95d95297d50","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.5.tgz","fileCount":272,"integrity":"sha512-slFB1dYCxqMJ2b82FtPj6n3t7zaerB+ZZ9zJgw80RZAR+6quxKsNhn1xjpisSpxQo8ulCn8i/G7fimtZM5dUTA==","signatures":[{"sig":"MEQCIBLZ2IcxcpuXKUhucDJcoCQtlo8dSMjMGrJTELHiFClbAiAV5N1EjQUp9kayE/9ZZIxGJmoTAG4+4FRXXI+7OduGUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1291949},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"87f066b9e0ed9bb773e19dd27d0af8129295c92b","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.5_1787602902615_0.9789327526885352","host":"s3://npm-registry-packages-npm-production"}},"13.1.6":{"name":"swarm-orchestrator","version":"13.1.6","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.6","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"cf539374062a9d27c1ddf6bf777622c864fb0e22","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.6.tgz","fileCount":274,"integrity":"sha512-zPNjOSznkthAPCkOjRa2dXi+wzgG3/NPbFjE87SLcLQ8Cc9a+O23ms9QOsbuizl/BCwGi/umJR/R6AZmY+L3QA==","signatures":[{"sig":"MEUCIH/ZMvDa8RwtbiKxUmTT2uV5nyKMH1ZXs2gX3gF1cg+OAiEA+K80BxyfXWYqgRA4JtD7o0zC7zsY4eT9KWEdZAZTRYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1359077},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"22e07d8909ddbc023e7860d8f8511f0c7404a4d8","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.6_1787605898641_0.3240567958688365","host":"s3://npm-registry-packages-npm-production"}},"13.1.7":{"name":"swarm-orchestrator","version":"13.1.7","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.7","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"01186eb80faec7c29a3739f917c8b28b8f19b021","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.7.tgz","fileCount":274,"integrity":"sha512-YetaVDXM5h5kaIrah3g+52JdBsNTisrHyn16y8JvGv8fQHXBZSWp9Oi/7xIJDsEy22uIzedV/RzMDwUo82AhlQ==","signatures":[{"sig":"MEUCIGyk4v8lM80Vvy/YB4iOPNSEUkyPv4AWjw6IocHcSDirAiEAl0faWhqI/WyALML+H+GrlwEM+fmpW6zbVodvrXEc7JM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1363401},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"24edc7424f752d9f8c40567ec4e09c0c49947ce1","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.7_1787606485374_0.9114413358339057","host":"s3://npm-registry-packages-npm-production"}},"13.1.8":{"name":"swarm-orchestrator","version":"13.1.8","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.8","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"c38f7dd7bfe1768adce02898cb341acd32318f79","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.8.tgz","fileCount":280,"integrity":"sha512-Trd/sgzMeT+nMpcKYFyjT+mxCFN6UEN3y8iWtsssBXp5Y/KTPS7MbPm8MwiEQuilv3FRHflJS4PT4ESoesrmrQ==","signatures":[{"sig":"MEQCIB+YOjidEPUvi5Paed3B1LkvoTeagXQwquS3Hdc8AwoKAiAZOqAYGF0hYwsWnZkMJWBffCQZXJf9I95Y0ivzG34+sg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1391199},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"721f8e2650bd452a948be8e61b064f42c96de4cd","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.8_1787608298020_0.46618341450239154","host":"s3://npm-registry-packages-npm-production"}},"13.1.9":{"name":"swarm-orchestrator","version":"13.1.9","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@13.1.9","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"af558e5988eac6b57d36715b1a369a5ebe564985","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-13.1.9.tgz","fileCount":280,"integrity":"sha512-5YBMwAZCLgXTXcFx2b2gyFGHv5zwryUTPfg8u/Ih6XTv0hSsQ6z9ODXkVPVcuOeuhvuhxHdQE1Q5gQwTHLknLA==","signatures":[{"sig":"MEQCIHDbofANMM7+uKd9U0VqE8VbomVB6NhI70M4VwFb3k5sAiB0f3kHPYJzXVn9uBf36Rl2vj6J1IVxVoEhN5Td71UyfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@13.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1402310},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"0822469814632710c5ddd4588d2e8693e40239d1","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","prepublishOnly":"npm run gates && npm run build"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.17.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_13.1.9_1787609969416_0.36875105282936826","host":"s3://npm-registry-packages-npm-production"}},"14.0.0":{"name":"swarm-orchestrator","version":"14.0.0","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.0.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"18691db05f482d62c22b01bf8b48b828f013e920","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.0.0.tgz","fileCount":429,"integrity":"sha512-wJRArxONOJTA+pdbN8qrQHT2IzlXauOBImtV+0FJ80+OoXBt7uqjb2muMHzLcE1EOh67H/kZQ8NLt6vKlmxXkw==","signatures":[{"sig":"MEUCIQCun1X5dG291myNMLh09YNZj1jHBnKt369k2NFxXlFT2QIgRcAgLIrDSzd+bb02wOCvzb1LRMtbeTMTRMhUxJbK/UA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCM48z+rmn6rhoxnX+C957O0zmGGOLlJVponbxQNwQbTQIhAKhay7lwQXPq5CKypWlHO4MUF+3GPYGOzs7drbnaUzl+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2257025},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"580a3f445ddafa2aee71642d1a385250b871f601","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.0.0_1788750381280_0.3923870168809587","host":"s3://npm-registry-packages-npm-production"}},"14.0.1":{"name":"swarm-orchestrator","version":"14.0.1","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.0.1","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"1f15f33b111118ed2a91575e1b4772d7c41b5609","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.0.1.tgz","fileCount":433,"integrity":"sha512-qT4/Xj6k7lNg6ZRautmdu2aUOY6VpR8e/WfmuNlVBYsBOxeTI+HJgR8AUjrKBWNDEOY0PIc9Bhp/JpoV5eTRKg==","signatures":[{"sig":"MEQCIG1JEkIpemTOXOxvmzmRUVnx1EqxFfz7KkTK2sk8M4M5AiAaq+peB61sgRLwJWMJL7m1yiZ59jF8/qwW4TuIoEoyDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIG/ROKQz+6n3ZwRnPMs5mR0nuNQUn2gIGtK5LhSqAJNvAiEA+KDmbzXp3/A8CIm/+jTsA/pbUCHfyk7+odLT0wK7CpM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2272846},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"fa213c3cba7d0ed39df75f86f31317497a565d60","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.0.1_1788808697225_0.044630296722323104","host":"s3://npm-registry-packages-npm-production"}},"14.0.2":{"name":"swarm-orchestrator","version":"14.0.2","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.0.2","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"9c73dd66af4a031f95cea749eb0498cd634d2a47","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.0.2.tgz","fileCount":433,"integrity":"sha512-nTzhBcIyX7/8giJZ9jwl5dsHl9308xa0ArxKrRl2AOD819nPRYxyTx2jTU0/xTtmqL9ZDj5TqbSejkIBNb1itA==","signatures":[{"sig":"MEYCIQDUGrBKV/14bQXra4rB06qNHByZyVw8+XefPU+ivljxNgIhAKe2+AxG/ZSvLhqMR2Y/sDcbgEi5oFfuq2eqQaaaVMpo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCYPgK67j8H5lOfBPA/xEcCWq9k2JOb6J9kq4gehZUFMgIgFtFoAxlVc5crka4RgOXjAXEsj39p0TCYzSnhfC1FGX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2274504},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"14eb4bfa61c710a45d9267fcf59e9a15057183a8","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run typecheck && npm run lint && npm test","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.10","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.10"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.0.2_1788809691938_0.4044373299899384","host":"s3://npm-registry-packages-npm-production"}},"14.1.0":{"name":"swarm-orchestrator","version":"14.1.0","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.1.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"9dd37a74fd5cfc6c412b851b6cb03e420a63663b","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.1.0.tgz","fileCount":641,"integrity":"sha512-o7dNkJBfIlc7duMMGRGfUcKHIpE3qWI6QM3f89dhpU5clh+lUCJAgPW0LY8RSvPZ3Rqo8Ggek6OxAKAzWGtJhQ==","signatures":[{"sig":"MEQCIAhOy3NUG5IVCFGvSPjM+jDsRp0XSLgTSZkb8NtJOIDBAiAlMPqz6hT/mQSWnnpBRL5nn9jZ/wnG/IsSueJ6/CpZ2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD05B5SHp4WLZHBKhSMwQ4Ukycqy07AwQixydA6B4guRgIgLjfGRafzlUxY2HteUBl6nBLT/j+/LXbTRG450NvVk1I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3370304},"type":"module","engines":{"node":">=24.0.0"},"gitHead":"caf960bc787e12bbba47d4f3e9720ebd8a8d4b4d","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run checks && npm run typecheck && npm run lint && npm test","checks":"node scripts/check-corpus-history.mjs && node scripts/check-invariant-drift.mjs && node scripts/check-doc-paths.mjs && node scripts/check-repo-weight.mjs && node scripts/check-cited-bundles-verify.mjs && node scripts/check-ci-verdicts.mjs","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@vitest/coverage-v8":"4.1.11"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.1.0_1789435875307_0.9027459283825952","host":"s3://npm-registry-packages-npm-production"}},"14.2.0":{"name":"swarm-orchestrator","version":"14.2.0","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.2.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"39e9e8e4a83208d224111446845e6e0481927482","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.2.0.tgz","fileCount":775,"integrity":"sha512-u59BuT4UJkr1XlpPeHg7LhsRdewMAGUyJ6Rwkz/74JRYPmUuY4a5rIKZVjK4jZonHBQNlUmVT3aQW1JctlLyZw==","signatures":[{"sig":"MEUCIQCNuXJTkyEZhdRZUOiWI/OQCISSZw6eyVr2YiCPvc2MNAIgFZXTw40N7jiwLLqjDejAFzvJyrCW8VrOBzQTLUsFt+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDSFMFd44+/iSZ8OxP+yJvDMyRxAO1Gc70T0v2X32onPAiBYpt6gloA0VbOmnUPhVF8OwY7Qsnd0Ax3giO4XMCo3eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4189951},"type":"module","engines":{"node":">=22.0.0"},"gitHead":"270811a4474284d9be2d07765eb26c35bc0c5453","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run checks && npm run typecheck && npm run lint && npm test","checks":"node scripts/check-corpus-history.mjs && node scripts/check-invariant-drift.mjs && node scripts/check-doc-paths.mjs && node scripts/check-repo-weight.mjs && node scripts/evidence-pack.mjs verify && node scripts/check-cited-bundles-verify.mjs && node scripts/check-ci-verdicts.mjs","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","build:verify":"node scripts/build-swarm-verify.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"workspaces":["packages/swarm-verify"],"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@playwright/test":"1.63.0","@vitest/coverage-v8":"4.1.11"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.2.0_1790529751683_0.5358474312871577","host":"s3://npm-registry-packages-npm-production"}},"14.3.0":{"name":"swarm-orchestrator","version":"14.3.0","keywords":["agentic-ai","ai-agents","audit-trail","cli","coding-agent","evidence","hash-chain","llm","local-llm","provenance","quality-gates","tamper-evident","tui","typescript","verification"],"license":"ISC","_id":"swarm-orchestrator@14.3.0","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"bin":{"swarm":"dist/cli.js"},"dist":{"shasum":"fd2d4ff2d6a3b4c91fe8ab9f4074c269fbe509e0","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.3.0.tgz","fileCount":841,"integrity":"sha512-HeHlXfO8Wa8wN8j2GeSpmOJ4wm4n4wkTV31VB5AMelHWUcn3tLoqVAUEuCORyez9c4/KpqYzsexct/HOBz+DeQ==","signatures":[{"sig":"MEUCIEaVWj77azVCRBkbQaYf0W0qSNM+pSNKfejMkKSXQ+tuAiEAp0ZhmzdoXozk9GJP7i2b8piVcXubm3cvOJ27dtqV+g8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDGMLk9cdiq4hJAUEhYmPLyquPRb1u5HFLKV7KVJZYN9AIgBSYO0l+g0oqUIDHaBCDEdrz4TpnPXE9AUf70xH/VEdc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5031581},"type":"module","engines":{"node":">=22.0.0"},"gitHead":"94ccbbf30931d58574be96de4ce2dab9352b289d","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run checks && npm run typecheck && npm run lint && npm test","checks":"node scripts/check-corpus-history.mjs && node scripts/check-invariant-drift.mjs && node scripts/check-doc-paths.mjs && node scripts/check-repo-weight.mjs && node scripts/evidence-pack.mjs verify && node scripts/check-cited-bundles-verify.mjs && node scripts/check-ci-verdicts.mjs","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","build:verify":"node scripts/build-swarm-verify.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"workspaces":["packages/swarm-verify"],"_npmVersion":"11.19.0","description":"A coding agent whose claims about its own work resolve to machine-captured evidence: an append-only hash-chained ledger, gates that retry under a numeric ratchet, and a signed bundle carrying its own verifier that anyone can check offline.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@playwright/test":"1.63.0","@vitest/coverage-v8":"4.1.11"},"_npmOperationalInternal":{"tmp":"tmp/swarm-orchestrator_14.3.0_1790804884079_0.9923455037286115","host":"s3://npm-registry-packages-npm-production"}},"14.4.0":{"_id":"swarm-orchestrator@14.4.0","bin":{"swarm":"dist/cli.js"},"bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"dist":{"shasum":"f8a3114631fb19b526ac79168eaa186c959b999f","tarball":"https://registry.npmjs.org/swarm-orchestrator/-/swarm-orchestrator-14.4.0.tgz","fileCount":841,"integrity":"sha512-RMo2izAmBrqr0dCASGuUZdfnqFTDHFxUknmPRnXdgMNnnDIPLSg/xRUI8FLDRZu9cFi+OdoTIH7C2qrMjaIa4w==","signatures":[{"sig":"MEUCIQDMjf+7MVPsWj47Di5bVKGWion50LSIDz2fkLNCcs9HJAIgOutL9cL1a4VPpCTvxzyE/vvh1/PcGGi9S9g4bwwdW3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH9am3UrC+lxUi0meaNibH9EZqa37PUkf/ogguEJr0J5AiBiBTbR/Nx8EXAgS1IgJhZbEjoynppGViesB4FmZql0fw=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/swarm-orchestrator@14.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5005582},"name":"swarm-orchestrator","type":"module","engines":{"node":">=22.0.0"},"gitHead":"d9360e4c167d2d739e62ac4d4db20ce06416b024","license":"ISC","private":false,"scripts":{"dev":"mkdir -p .swarm/dev-workspace && node src/cli.ts --workspace .swarm/dev-workspace","lint":"biome check","test":"vitest run","build":"node scripts/build-dist.mjs","gates":"npm run checks && npm run typecheck && npm run lint && npm test","checks":"node scripts/check-corpus-history.mjs && node scripts/check-invariant-drift.mjs && node scripts/check-doc-paths.mjs && node scripts/check-repo-weight.mjs && node scripts/evidence-pack.mjs verify && node scripts/check-cited-bundles-verify.mjs && node scripts/check-ci-verdicts.mjs","format":"biome format --write","prepare":"npm run build","test:unit":"SWARM_TEST_PROFILE=unit vitest run","typecheck":"tsc --noEmit","fuzz:build":"rm -rf .swarm/fuzz-build && tsc -p fuzz/tsconfig.build.json && node fuzz/smoke.mjs","build:verify":"node scripts/build-swarm-verify.mjs","check:packaged":"node scripts/check-packed-cli.mjs","prepublishOnly":"npm run gates && npm run build","test:integration":"SWARM_TEST_PROFILE=integration vitest run"},"version":"14.4.0","_npmUser":{"name":"bradkinnard","email":"bradkinnard@proton.me"},"homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","keywords":["agent-harness","agentic-ai","ai-agents","audit-trail","cli","coding-agent","coding-agents","developer-tools","evidence","hash-chain","llm","local-llm","provenance","quality-gates","software-engineering","tamper-evident","tui","typescript","verification"],"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"workspaces":["packages/swarm-verify"],"_npmVersion":"11.19.0","description":"A coding agent that must prove its work: bounded repository changes, the project's real checks, challenges to weak evidence, retries that cannot trade away test quality, and a signed, hash-chained evidence record anyone can verify offline.","directories":{},"maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"_nodeVersion":"24.21.0","dependencies":{"ai":"^7.0.65","ink":"^7.1.1","zod":"^4.4.3","react":"^19.2.8","undici":"^7.29.0","smol-toml":"^1.8.0","@ai-sdk/google":"^4.0.44","@ai-sdk/openai":"^4.0.41","@ai-sdk/anthropic":"^4.0.38","@ai-sdk/openai-compatible":"^3.0.30"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^7.0.2","@types/node":"^24.13.3","@types/react":"^19.2.18","@biomejs/biome":"^2.5.8","@jazzer.js/core":"^4.0.0","@ai-sdk/provider":"^4.0.7","@playwright/test":"1.63.0","@vitest/coverage-v8":"4.1.11"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/swarm-orchestrator_14.4.0_1791675290375_0.16887026810402794"}}},"time":{"created":"2026-04-30T12:53:54.667Z","modified":"2026-10-10T23:34:50.889Z","7.0.0-alpha.0":"2026-04-30T12:53:54.870Z","11.2.0":"2026-06-10T23:53:23.309Z","12.0.0":"2026-06-12T21:53:01.805Z","13.1.3":"2026-08-24T16:37:33.285Z","13.1.4":"2026-08-24T19:51:44.126Z","13.1.5":"2026-08-24T20:21:42.855Z","13.1.6":"2026-08-24T21:11:38.813Z","13.1.7":"2026-08-24T21:21:25.594Z","13.1.8":"2026-08-24T21:51:38.257Z","13.1.9":"2026-08-24T22:19:29.596Z","14.0.0":"2026-09-07T03:06:21.409Z","14.0.1":"2026-09-07T19:18:17.329Z","14.0.2":"2026-09-07T19:34:52.101Z","14.1.0":"2026-09-15T01:31:15.454Z","14.2.0":"2026-09-27T17:22:31.848Z","14.3.0":"2026-09-30T21:48:04.212Z","14.4.0":"2026-10-10T23:34:50.562Z"},"bugs":{"url":"https://github.com/moonrunnerkc/swarm-orchestrator/issues"},"license":"ISC","homepage":"https://github.com/moonrunnerkc/swarm-orchestrator#readme","keywords":["agent-harness","agentic-ai","ai-agents","audit-trail","cli","coding-agent","coding-agents","developer-tools","evidence","hash-chain","llm","local-llm","provenance","quality-gates","software-engineering","tamper-evident","tui","typescript","verification"],"repository":{"url":"git+https://github.com/moonrunnerkc/swarm-orchestrator.git","type":"git"},"description":"A coding agent that must prove its work: bounded repository changes, the project's real checks, challenges to weak evidence, retries that cannot trade away test quality, and a signed, hash-chained evidence record anyone can verify offline.","maintainers":[{"name":"bradkinnard","email":"bradkinnard@proton.me"}],"readme":"<a id=\"readme-top\"></a>\n\n<div align=\"center\">\n\n<h1>Swarm Orchestrator</h1>\n\n<p><strong>A coding agent that must prove its work.</strong></p>\n\n<p>\nIt makes bounded repository changes, runs the project's real checks, challenges weak evidence,<br />\nretries failures without trading away test quality, and records what actually happened,<br />\nso the agent's own summary is never the source of truth.\n</p>\n\n<p>\n  <a href=\"docs/README.md\"><strong>Explore the docs »</strong></a>\n  ·\n  <a href=\"docs/evidence/2026-08-18/live-tasks.md\">See a real run</a>\n  ·\n  <a href=\"https://github.com/moonrunnerkc/swarm-verify\">Swarm Verify, the standalone verifier</a>\n  ·\n  <a href=\"https://github.com/moonrunnerkc/swarm-orchestrator/issues/new/choose\">Report a bug</a>\n</p>\n\n[![gates](https://img.shields.io/github/actions/workflow/status/moonrunnerkc/swarm-orchestrator/gates.yml?branch=v13-main&style=for-the-badge&label=gates)](https://github.com/moonrunnerkc/swarm-orchestrator/actions/workflows/gates.yml)\n[![npm](https://img.shields.io/npm/v/swarm-orchestrator?style=for-the-badge&label=swarm-orchestrator&color=CB3837)](https://www.npmjs.com/package/swarm-orchestrator)\n[![node](https://img.shields.io/badge/node-%E2%89%A522-5FA04E?style=for-the-badge)](package.json)\n[![license](https://img.shields.io/badge/license-ISC-blue?style=for-the-badge)](LICENSE)\n\n</div>\n\n---\n\n## What it does\n\n`swarm` takes a task and a git repository. It plans, declares the files it intends to touch,\nedits through one recording chokepoint, runs your project's checks as sealed gates, and retries\nfailures under a ratchet that refuses a fix which trades away tests, assertions or coverage.\nWhen the gates pass it exports a signed, hash-chained evidence bundle that carries its own\ndependency-free verifier, so anyone can check what ran, and what passed, with nothing but Node\nand without trusting the machine that produced it.\n\n```text\ntask\n  -> the agent plans and declares its files\n  -> a bounded change, every tool call recorded\n  -> the project's checks run as sealed gates\n  -> weak evidence is challenged: a passing check must be shown able to fail\n  -> the ratchet: a retry may not trade away tests, assertions or coverage\n  -> retry, accept, or refuse with the reason on the record\n  -> evidence: a signed bundle anyone can verify offline\n```\n\nHere is a real run, committed: [`live-tasks.md`](docs/evidence/2026-08-18/live-tasks.md),\nwith its bundle in [`live-frontier/`](docs/evidence/2026-08-18/live-frontier). And here is the\npackaged tool doing it, installed from a tarball into a directory holding nothing else, against\na workspace it had never seen, recorded in a real terminal:\n[`installed-package-run.md`](docs/evidence/2026-08-23/installed-package-run.md).\n\n## Why it is not an ordinary coding agent\n\nThe model can say whatever it likes. It cannot make a check pass, mark a claim verified, or\nchange a record after the fact. Those are the harness's to decide.\n\n- **A claim is not evidence.** A structured claim the model makes names a predicate and a\n  record; the harness evaluates it against its own records and renders the verdict. Narrative\n  never renders green, and a claim the harness cannot evaluate renders `UNVERIFIED` without\n  stopping the run.\n- **A pass must be able to fail.** Each passing gate is handed one fixture it has to refuse,\n  so a check that cannot fail is caught rather than counted.\n- **A retry cannot buy green by deleting tests.** Tests collected, assertions in touched tests\n  and covered changed lines cannot decrease across retries; skips cannot increase.\n- **Regression and task acceptance are two answers.** A suite passing says nothing broke. Only\n  a requirement contract or an acceptance check you supply can say the work was done, and the\n  tool reports when neither was given.\n- **Unmeasured is a verdict.** Nobody checked is not the same as checked and passed, and it is\n  never rendered as a pass.\n\n## Install\n\n```sh\nnpm install -g swarm-orchestrator\n```\n\nThis installs the registry’s `latest` release and leaves `swarm` on your path.\nThe source version is **14.4.0**; publication is tracked in\n[the delivery record](docs/release-delivery-2026-10-10.md). It runs on Node 22 or newer; Node 24 or\nnewer is recommended, because the changed-line coverage measurement spawns Node's test runner\nwith process isolation, which Node 22 below 22.8 rejects. Below that, the measurement reports\nunmeasured and never counts as a pass. `swarm doctor` says which Node it found and what owns\nthe `swarm` command, and `--fix` repairs an install that an older build is shadowing.\n\n## Run one task\n\n```sh\nexport ANTHROPIC_API_KEY=...       # or OPENAI_API_KEY, GOOGLE_GENERATIVE_AI_API_KEY,\n                                   # or start Ollama and pass --model local:<id>\ncd your-repository\nswarm \"make slugify collapse whitespace and strip punctuation\"\n```\n\nKeys come from the environment or your OS keychain, never from `swarm.toml`: that file is\ncommitted and cloned, so a key in it has already been shared with everyone holding the\nrepository. The run shows each step, each gate and each retry as it happens, and ends on the\nevidence panel. `swarm review <bundle>` opens a run's review page later; `swarm verify <bundle>`\nchecks its integrity and who signed it. Every command and flag is in\n[docs/cli.md](docs/cli.md); sessions, several workers at once and the screen are in\n[docs/using.md](docs/using.md).\n\n<p align=\"right\">(<a href=\"#readme-top\">back to top</a>)</p>\n\n## What verification happens\n\nEvery tool call and every check goes through one recording chokepoint, and the record is an\nappend-only, hash-chained ledger that lives outside the workspace. The gates, their severities,\ntheir parsers and the budgets are sealed before the first model call, so nothing the model\ndoes during the run can change what it is measured against.\n\nSix words carry most of the weight. A **gate** is a check declared as data: a command, a\nparser, and whether it blocks. The **ratchet** is the rule that a retry may not trade away\ntests, assertions or coverage to turn a gate green. A **bond** is one file a passing gate is\nhanded that it must refuse, so a pass that cannot fail is caught. An **oracle** is the check\nyou supply that says the task was done, as distinct from nothing broke. **Reach** is whether\nthat oracle executed the lines a patch added. And **unmeasured** is a verdict of its own.\n\nWith a goal contract (`--goal-contract`), the contract's own checks are challenged\n(`--challenges report|required`): a base control per requirement, mechanical mutations of the\nchanged lines witnessed by the suite, and sealed fixtures, so a check that could not have\ncaught wrong work is named. With `--strengthen`, the model may propose one additive check per\nwitnessed gap; the harness admits it only where it observes the check reject the counterexample\nand accept every sealed reference, then repairs the code under the revised contract. Nothing is\nasked of the model before the criteria are sealed.\n\nThe mechanics, the nine-answer report and worked examples are in\n[docs/verifying.md](docs/verifying.md). The goal contracts, presets and package scope are in\n[docs/broad-use.md](docs/broad-use.md).\n\n## What evidence is produced\n\nA run writes its ledger under `~/.swarm/sessions`, never inside the workspace, and exports a\nbundle: the manifest with the chain head and the signature, the records, every blob by\nSHA-256, the review page, the summary, and `verify.mjs`, a dependency-free verifier that\nre-derives every verdict from the records alone.\n\n```sh\nnode <bundle>/verify.mjs <bundle>          # anywhere, nothing installed\nswarm verify <bundle> --signer <fp>        # here, with the signer judged too\n```\n\nEvery number here links to the committed artifact of the thing happening; the full table, and\nthe list of things that may not be said, is [docs/claims.md](docs/claims.md).\n\n- **One changed byte breaks verification.** The same bundle verified and then tampered with in\n  a single byte, exit 0 and exit 1 side by side, with a script to reproduce it:\n  [tamper demo](docs/evidence/2026-08-18/tamper-demo).\n- **A bundle verifies on a machine that has never seen this repository.** Run in a `node:24`\n  container with no network and no mount of this repository:\n  [clean-container-verification.md](docs/evidence/2026-08-23/clean-container-verification.md).\n- **A green verdict is computed by the harness, and the model cannot produce one.** In a real\n  run the model asserted a predicate the language does not parse; the harness rendered it\n  `UNVERIFIED` and carried on, twice: [shakedown results](docs/evidence/2026-08-18/shakedown/results.md).\n- **A suite passing is not the task being done.** Four of eighteen patches this project's own\n  agent and a baseline arm produced over three public TypeScript repositories passed their\n  project's whole suite and failed a hidden acceptance test, which is why `regression` and\n  `task` are two answers: [docs/verifying.md](docs/verifying.md). That is a measurement of\n  those eighteen patches, not a rate for AI-written changes in general.\n- **The oracle is judged too.** Certified tasks turned out to rest on oracles that could not\n  fail; the last false green standing was refused because its oracle accepted a change to a\n  line it had run: [docs/verifying.md](docs/verifying.md#the-oracle-is-judged-too).\n- **The September 6 mined-corpus false-green rate was 0 in 15**, 95% CI [0.0, 20.4], with two\n  oracles per task, one handed to the tool and one held back:\n  [mined-corpus](docs/evidence/2026-09-06/mined-corpus/README.md).\n\n<p align=\"right\">(<a href=\"#readme-top\">back to top</a>)</p>\n\n## What it does not prove\n\nThe five that matter most. The full list is in\n[docs/verifying.md](docs/verifying.md#what-is-not-claimed).\n\n- **It is not production-ready.** The counts above describe the linked campaigns, not a fresh\n  measurement of every gate on this checkout. Each row and what would settle it:\n  [docs/beta-gates.md](docs/beta-gates.md).\n- **Not \"fully secure\".** The secret detector does known-pattern scrubbing, not secret removal.\n  Zero crashes at a fuzz budget is evidence, not proof.\n- **The default execution mode is `restricted`, not `isolated`.** A lexical path and program\n  policy in front of interpreters unless you pass `--isolation`. Reported before the run starts\n  and recorded on the chain rather than quietly assumed, but it is not containment.\n- **0 in 15 says \"under 20%\", not \"zero\".** That upper bound is the honest half of the rate,\n  and it is a rate for that corpus and that build, not for this one.\n- **Shown its oracle, a model still gets past this.** Bonding and challenges ask whether the\n  checks judged what the patch added. They cannot ask what the patch left out, and that is\n  what an adversarial patch does.\n\nGates prove mechanical quality, not design quality. What a bundle buys you is that reviewing the\nchange is fast and its claims are checkable, not that review is unnecessary.\n\n## Swarm Verify, the standalone verifier\n\nThe verification the agent is held to is a product of its own. [Swarm Verify](https://github.com/moonrunnerkc/swarm-verify)\nchecks a change from any source, this agent, Claude Code, Codex, Copilot, another agent or a\nperson, with no model, no key and no configuration:\n\n```sh\nnpx swarm-verify                                   # run a repository's declared checks and report what that establishes\nnpx swarm-verify ci --pr owner/repo#123            # verify a pull request in a fresh checkout of its base\nnpx swarm-verify verify <bundle> --signer <fp>     # check a bundle this agent, or anything else, produced\n```\n\nIt also ships as the GitHub Action `moonrunnerkc/swarm-verify@v1`, a Claude Code hook, an MCP\nserver and a pre-commit hook. The same commands are in the `swarm` binary: `swarm check`,\n`swarm ci`, `swarm verify`, `swarm verdict` and `swarm gates` need no model, and\n[docs/verify-only.md](docs/verify-only.md) walks through them over committed artifacts.\n\nThere is one implementation. The `swarm-verify` package is built from this repository's\nverification modules under [packages/swarm-verify](packages/swarm-verify), behind a build-time\nboundary that refuses any provider, worker or screen module; the agent composes those same\nmodules. Swarm Orchestrator uses Swarm Verify. It is not Swarm Verify.\n\n<p align=\"right\">(<a href=\"#readme-top\">back to top</a>)</p>\n\n## Versions\n\nThe package name has carried three different programs, and the majors are the boundary:\n\n| Versions | What it was |\n| --- | --- |\n| 8.x | a contract-first coding orchestrator: a goal compiled to typed obligations, persona candidates raced per obligation, verifier-gated commits, a hash-chained ledger |\n| 10.x to 12.x | a pull-request auditor: static cheat-pattern detectors over AI-written diffs, advisory by default, with a merge gate. The last of that line is the `v12-final` tag |\n| 13.x and later | this coding agent, with no migration path from 12.x and nothing of its interface |\n| 14.1.0 | the verification path extracted as the `swarm-verify` package, the same code with none of the agent |\n| 14.3.0 | the README and repository description presented Swarm Verify as this repository's product and the agent as a beta mode; 14.4.0 restores the agent as the product of this repository and gives the verifier its own home |\n\nPin a major. Each release names the verifier version it carries in [CHANGELOG.md](CHANGELOG.md);\nthe verifier's own changelog is [packages/swarm-verify/CHANGELOG.md](packages/swarm-verify/CHANGELOG.md).\n\n## Contributing\n\nThe bar is the one the tool applies to itself: `npm run gates` green with the output shown, new\nbehaviour covered by a test that failed first, and no claim in a document that its linked artifact\ndoes not establish.\n\n1. Fork the project\n2. Create a branch (`git checkout -b feature/amazing-feature`)\n3. Run `npm run gates` and paste the real output in the pull request\n4. Commit (`git commit -m 'Add an amazing feature'`)\n5. Push (`git push origin feature/amazing-feature`)\n6. Open a pull request\n\nNew dependencies need a one-line justification; the standard library is preferred.\n[docs/build-guide.md](docs/build-guide.md) is worth reading before structural work.\n\n## License\n\nDistributed under the ISC License. See [LICENSE](LICENSE).\n\n## Contact\n\nBrad Kinnard, [@KChackerman](https://x.com/KChackerman), bradkinnard@proton.me\n\nProject link: [github.com/moonrunnerkc/swarm-orchestrator](https://github.com/moonrunnerkc/swarm-orchestrator)\n\n<p align=\"right\">(<a href=\"#readme-top\">back to top</a>)</p>\n","readmeFilename":"README.md"}