{"_id":"@adlc/quartermaster","_rev":"5-db610d22b1ad94d625be88a236e7207c","name":"@adlc/quartermaster","dist-tags":{"latest":"1.11.1"},"versions":{"1.8.0":{"name":"@adlc/quartermaster","version":"1.8.0","keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"author":{"url":"@voodootikigod","name":"Chris Williams"},"license":"MIT","_id":"@adlc/quartermaster@1.8.0","maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"dist":{"shasum":"8b74a8cf98dd5d6067450c5614179338e1074826","tarball":"https://registry.npmjs.org/@adlc/quartermaster/-/quartermaster-1.8.0.tgz","fileCount":11,"integrity":"sha512-DnUUccsYs1v+Y5lKK8AwNFanwuz4KfHVso/5C1E2lOEdGIlyl7P7/2f2GeWc4HuH/G4zQCvJys7fEvn8CxLAtg==","signatures":[{"sig":"MEUCIEmhAV/MEbh02BSZTLl9RKH8Ro28N5etv0TTq2GRMqIbAiEAo/+dKBzUh7YZHStSoC3fqj0/b5ve+IIlm80c5ObPanY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adlc%2fquartermaster@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59599},"main":"index.mjs","type":"module","engines":{"node":">=18"},"exports":{".":"./index.mjs"},"gitHead":"e6b6525502d3deb214f58cffeb6c9db4b9787e39","scripts":{"test":"node --test test/*.test.mjs"},"_npmUser":{"name":"voodootikigod","email":"voodootikigod@gmail.com"},"repository":{"url":"git+https://github.com/voodootikigod/adlc.git","type":"git","directory":"packages/quartermaster"},"_npmVersion":"11.19.0","description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/quartermaster_1.8.0_1786195818572_0.1588422487743859","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@adlc/quartermaster","version":"1.9.0","keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"author":{"url":"@voodootikigod","name":"Chris Williams"},"license":"MIT","_id":"@adlc/quartermaster@1.9.0","maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"dist":{"shasum":"0d8c47d0c12f2a88fd3e8614d2e6aa57f586658c","tarball":"https://registry.npmjs.org/@adlc/quartermaster/-/quartermaster-1.9.0.tgz","fileCount":11,"integrity":"sha512-7qVuRO1VK9pOzxnCofRLa3C6ll6siHC74GnACByZLTMszE16mKyFohY61iSsGazms4Ki8nAN1YrGi7tJrm3d1A==","signatures":[{"sig":"MEYCIQCDk/DXDFQJFBmCxWutwkVO0L6O3HLJSgd0VYsKFhEowQIhAJ/hlmZgsdwHngmmN7vgQZQDGXxWZ5WadOna3XMJgUbA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adlc%2fquartermaster@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59599},"main":"index.mjs","type":"module","engines":{"node":">=18"},"exports":{".":"./index.mjs"},"gitHead":"a928a7eeb3c2c5078b44c181702c3220ba1a7a5b","scripts":{"test":"node --test test/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3f15f5d7-edfc-46b2-b087-c0062fdaba0e"}},"repository":{"url":"git+https://github.com/voodootikigod/adlc.git","type":"git","directory":"packages/quartermaster"},"_npmVersion":"11.19.0","description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/quartermaster_1.9.0_1786221076419_0.14229960283741327","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@adlc/quartermaster","version":"1.10.0","keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"author":{"url":"@voodootikigod","name":"Chris Williams"},"license":"MIT","_id":"@adlc/quartermaster@1.10.0","maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"dist":{"shasum":"6a1891318b8fb7f66520a5d57da0befbee3ef2d0","tarball":"https://registry.npmjs.org/@adlc/quartermaster/-/quartermaster-1.10.0.tgz","fileCount":11,"integrity":"sha512-l+gxB+iH5O+EiZKHAlrp5cuGJehgsXiiRSXD6CuOyWtFbrYm7vXGWcAQKGyAOlBrBSLYyFg6yO+P/TpepX5Lug==","signatures":[{"sig":"MEUCIQCPscew4RpbVgZO+cMalLIGUmnev0p/t5c43PzD+GiOuQIgFYUBTMDTyB7KYFf5b07LuWuScquBSawVBUwAhpYZlqY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adlc%2fquartermaster@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59600},"main":"index.mjs","type":"module","engines":{"node":">=18"},"exports":{".":"./index.mjs"},"gitHead":"905d493f596a62b4bc3236f97281a43982c1e300","scripts":{"test":"node --test test/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3f15f5d7-edfc-46b2-b087-c0062fdaba0e"}},"repository":{"url":"git+https://github.com/voodootikigod/adlc.git","type":"git","directory":"packages/quartermaster"},"_npmVersion":"11.19.0","description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/quartermaster_1.10.0_1786385877284_0.3476012275173166","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@adlc/quartermaster","version":"1.11.0","keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"author":{"url":"@voodootikigod","name":"Chris Williams"},"license":"MIT","_id":"@adlc/quartermaster@1.11.0","maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"dist":{"shasum":"d9294239b14b43584d46b41c90ca5572bdf96466","tarball":"https://registry.npmjs.org/@adlc/quartermaster/-/quartermaster-1.11.0.tgz","fileCount":11,"integrity":"sha512-o+LPkC3ntVb1DV5fMe+2izS2Dsq2eF9dgn29CwdqYDMx5aAqND6gCPTnSHD0t/NAhjwfdWoe1PDpcA+0kl20xg==","signatures":[{"sig":"MEQCIHrWE/EpiHqqE8r6SDNMTaW9fATXUcQqJPM6iuFzjI3JAiBrFV76ms251zeoPDRabUnoVYTKotMrxTkRr4OUj95NYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adlc%2fquartermaster@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59600},"main":"index.mjs","type":"module","engines":{"node":">=18"},"exports":{".":"./index.mjs"},"gitHead":"1e4e6f704912c912d9b3c87f57e077a48ca78c5d","scripts":{"test":"node --test test/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3f15f5d7-edfc-46b2-b087-c0062fdaba0e"}},"repository":{"url":"git+https://github.com/voodootikigod/adlc.git","type":"git","directory":"packages/quartermaster"},"_npmVersion":"11.19.0","description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","directories":{},"_nodeVersion":"20.20.2","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/quartermaster_1.11.0_1787594120863_0.3400432061905334","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@adlc/quartermaster","version":"1.11.1","description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","type":"module","license":"MIT","author":{"name":"Chris Williams","url":"@voodootikigod"},"repository":{"type":"git","url":"git+https://github.com/voodootikigod/adlc.git","directory":"packages/quartermaster"},"homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"main":"index.mjs","exports":{".":"./index.mjs"},"scripts":{"test":"node --test test/*.test.mjs"},"engines":{"node":">=18"},"publishConfig":{"access":"public","provenance":true},"gitHead":"c5772b4ff942bec77a34454c4fc888ae4e4b2c14","_id":"@adlc/quartermaster@1.11.1","_nodeVersion":"20.20.2","_npmVersion":"11.19.1","dist":{"integrity":"sha512-QKm56cLakBQFYAhW+ZYtIm4AaGbbEjO7dI3D4N0uAck4qAQGWlyGbS1ncPpwxXSvCv/g60RiSYOIf+WvNEbM5w==","shasum":"58f4e61a40be980554ed0f12111fe760d19aa9af","tarball":"https://registry.npmjs.org/@adlc/quartermaster/-/quartermaster-1.11.1.tgz","fileCount":11,"unpackedSize":59600,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@adlc%2fquartermaster@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDK4VCNkgqi5UvhtXn4ApXf94r4D5nwhhNEXSyxm3VVYAIhAKjRK8aLlIwATK0n1L+NUcYno8AMIBPorW0n5vJqCu+I"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3f15f5d7-edfc-46b2-b087-c0062fdaba0e"}},"directories":{},"maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/quartermaster_1.11.1_1788949633538_0.997053589594451"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-08T13:30:18.380Z","modified":"2026-09-09T10:27:14.117Z","1.8.0":"2026-08-08T13:30:18.707Z","1.9.0":"2026-08-08T20:31:16.592Z","1.10.0":"2026-08-10T18:17:57.420Z","1.11.0":"2026-08-24T17:55:21.005Z","1.11.1":"2026-09-09T10:27:13.654Z"},"bugs":{"url":"https://github.com/voodootikigod/adlc/issues"},"author":{"name":"Chris Williams","url":"@voodootikigod"},"license":"MIT","homepage":"https://github.com/voodootikigod/adlc/tree/main/packages/quartermaster#readme","keywords":["adlc","agentic","ai","llm","cli","quartermaster","gate"],"repository":{"type":"git","url":"git+https://github.com/voodootikigod/adlc.git","directory":"packages/quartermaster"},"description":"Operator-local channel registry + lifecycle-job routing (the ADLC quartermaster layer) — no LLM calls, no repo-side channel selection.","maintainers":[{"name":"voodootikigod","email":"voodootikigod@gmail.com"}],"readme":"# @adlc/quartermaster\n\nThe ADLC **supply layer**: which model runs which lifecycle job, decided by the\noperator — never by the repo under review, and never by a model at run time.\n\nImplements [`docs/specs/operating-stack.md`](../../docs/specs/operating-stack.md)\n§4–§5. No LLM calls. No defaults.\n\nTwo seams, nothing else:\n\n**1. The operator-local channel registry (§4b).** `quartermaster.json` lives\noutside every candidate tree. A configured path that is relative or inside the\nrepo under review *disables* loading with a loud notice rather than reading it,\nmirroring how `adversarial-review` treats `ADVERSARIAL_REVIEW_CONFIG`. Load-time\nvalidation enforces rules 1–7 — closed channel names, an adapter allowlist drawn\nfrom `packages/fleet/lib/adapters/`, no argv-shaped fields at any depth, distinct\nfallback transports, a closed transport taxonomy, concrete model IDs for reviewer\nseats, and a complete `(adapter, model) → provider` table. Every failure is fail\nclosed; there are no default channels.\n\n**2. The lifecycle-job routing contract (§5).** `routeJob` is a total function\nover a closed job enum that does not trust its caller: for `build.*` jobs the\nclass is *derived* from `ticket.category` and `assignment.float`, and a\ncaller-supplied label that disagrees with the derivation throws.\n\n```js\nimport { loadRegistry, routeJob, resolveRoute } from '@adlc/quartermaster';\n\nconst { registry, notices } = loadRegistry({ repoDir, adapters });\nconst route = routeJob({ job: 'build.critical-path', assignment, ticket });\nconst seat = resolveRoute(registry, route); // { adapter, model, transport, provider }\n```\n\n`assignment` is `@adlc/model-router`'s `assignTicket` output, consumed exactly as\nemitted. Float comes from the **assignment**, never from the ticket: stored\ntickets have no `float` field, and defaulting an absent one would silently\ndowngrade critical-path work to the cheap channel.\n\nThe adapter catalog is **injected** rather than imported. `@adlc/fleet` owns the\nadapter modules and consumes this package, so importing it here would make the\npublish graph circular — and injection keeps the alias contract adapter-owned\ninstead of restating harness knowledge in the validator.\n\n## Schema reference\n\n[`docs/integrations/quartermaster-registry.md`](../../docs/integrations/quartermaster-registry.md)\n— annotated example, field reference, and the full rule table. The repo carries\nno registry of its own; dispatch never reads one from the tree.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}