{"id":"@lssm-tech/module.provider-ranking","slug":"module.provider-ranking","name":"@lssm-tech/module.provider-ranking","version":"2.0.5","path":"packages/platform/agents/provider-ranking-module","manifestPath":"packages/platform/agents/provider-ranking-module/package.json","manifestBlobSha":"b205f15766a188e28c91dba3e7fa173ec149ed20","layer":"platform","physicalArea":"agents","primaryArea":"integrations-and-providers","classification":{"privateDeclared":null,"catalogFamily":"solutions","catalogKind":"module","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"AI provider ranking module with persistence and pipeline orchestration","descriptionOrigin":"package.json","catalog":{"family":"solutions","kind":"module","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./entities","./mcp","./pipeline","./pipeline/ingestion-pipeline","./pipeline/ranking-pipeline","./provider-ranking.feature","./storage"],"documentation":[{"title":"Module Provider Ranking documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.provider-ranking","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.module.provider.ranking","title":"Module Provider Ranking","description":"AI provider ranking module with persistence and pipeline orchestration","status":"active","useCases":["Adopt ai provider ranking module with persistence and pipeline orchestration"],"aliases":["contractspec","ai","ranking","benchmark","module","provider"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/module.provider-ranking","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/entities","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/pipeline","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/pipeline/ingestion-pipeline","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/pipeline/ranking-pipeline","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/provider-ranking.feature","symbols":[]},{"from":"@lssm-tech/module.provider-ranking/storage","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/module.provider-ranking package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/entities","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/pipeline","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/pipeline/ingestion-pipeline","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/pipeline/ranking-pipeline","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/provider-ranking.feature","symbols":[]},{"capabilityId":"package.lssm.tech.module.provider.ranking","from":"@lssm-tech/module.provider-ranking/storage","symbols":[]}],"scripts":{"publish:pkg":"bun publish --tolerate-republish --ignore-scripts --verbose","publish:pkg:canary":"bun publish:pkg --tag canary","build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","dev":"contractspec-bun-build dev","clean":"rimraf dist .turbo","lint":"bun lint:fix","lint:fix":"node ../../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../../scripts/biome.cjs check --write .","lint:check":"node ../../../../scripts/biome.cjs check .","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.provider-ranking":"workspace:^","@lssm-tech/lib.schema":"workspace:^","@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.contracts-spec-core":"workspace:^","@lssm-tech/lib.ai-providers":"workspace:^","@lssm-tech/lib.contracts-runtime-core":"workspace:^","@lssm-tech/lib.contracts-runtime-kernel":"workspace:^","zod":"catalog:"},"devDependencies":{"@lssm-tech/tool.typescript":"workspace:*","@lssm-tech/tool.bun":"workspace:*","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./entities":"./src/entities/index.ts","./mcp":"./src/mcp/index.ts","./pipeline":"./src/pipeline/index.ts","./pipeline/ingestion-pipeline":"./src/pipeline/ingestion-pipeline.ts","./pipeline/ranking-pipeline":"./src/pipeline/ranking-pipeline.ts","./provider-ranking.feature":"./src/provider-ranking.feature.ts","./storage":"./src/storage/index.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","browser":"./dist/browser/index.js","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./entities":{"types":"./dist/entities/index.d.ts","browser":"./dist/browser/entities/index.js","bun":"./dist/entities/index.js","node":"./dist/node/entities/index.js","default":"./dist/entities/index.js"},"./mcp":{"types":"./dist/mcp/index.d.ts","browser":"./dist/browser/mcp/index.js","bun":"./dist/mcp/index.js","node":"./dist/node/mcp/index.js","default":"./dist/mcp/index.js"},"./pipeline":{"types":"./dist/pipeline/index.d.ts","browser":"./dist/browser/pipeline/index.js","bun":"./dist/pipeline/index.js","node":"./dist/node/pipeline/index.js","default":"./dist/pipeline/index.js"},"./pipeline/ingestion-pipeline":{"types":"./dist/pipeline/ingestion-pipeline.d.ts","browser":"./dist/browser/pipeline/ingestion-pipeline.js","bun":"./dist/pipeline/ingestion-pipeline.js","node":"./dist/node/pipeline/ingestion-pipeline.js","default":"./dist/pipeline/ingestion-pipeline.js"},"./pipeline/ranking-pipeline":{"types":"./dist/pipeline/ranking-pipeline.d.ts","browser":"./dist/browser/pipeline/ranking-pipeline.js","bun":"./dist/pipeline/ranking-pipeline.js","node":"./dist/node/pipeline/ranking-pipeline.js","default":"./dist/pipeline/ranking-pipeline.js"},"./provider-ranking.feature":{"types":"./dist/provider-ranking.feature.d.ts","browser":"./dist/browser/provider-ranking.feature.js","bun":"./dist/provider-ranking.feature.js","node":"./dist/node/provider-ranking.feature.js","default":"./dist/provider-ranking.feature.js"},"./storage":{"types":"./dist/storage/index.d.ts","browser":"./dist/browser/storage/index.js","bun":"./dist/storage/index.js","node":"./dist/node/storage/index.js","default":"./dist/storage/index.js"}},"types":"./dist/index.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/module.provider-ranking","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./entities","importPath":"@lssm-tech/module.provider-ranking/entities","target":"./src/entities/index.ts","targets":[{"conditions":[],"target":"./src/entities/index.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/entities/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/entities/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./mcp","importPath":"@lssm-tech/module.provider-ranking/mcp","target":"./src/mcp/index.ts","targets":[{"conditions":[],"target":"./src/mcp/index.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/mcp/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/mcp/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./pipeline","importPath":"@lssm-tech/module.provider-ranking/pipeline","target":"./src/pipeline/index.ts","targets":[{"conditions":[],"target":"./src/pipeline/index.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/pipeline/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/pipeline/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./pipeline/ingestion-pipeline","importPath":"@lssm-tech/module.provider-ranking/pipeline/ingestion-pipeline","target":"./src/pipeline/ingestion-pipeline.ts","targets":[{"conditions":[],"target":"./src/pipeline/ingestion-pipeline.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/pipeline/ingestion-pipeline.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/pipeline/ingestion-pipeline.ts","sourceStatus":"verified source file"}]},{"subpath":"./pipeline/ranking-pipeline","importPath":"@lssm-tech/module.provider-ranking/pipeline/ranking-pipeline","target":"./src/pipeline/ranking-pipeline.ts","targets":[{"conditions":[],"target":"./src/pipeline/ranking-pipeline.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/pipeline/ranking-pipeline.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/pipeline/ranking-pipeline.ts","sourceStatus":"verified source file"}]},{"subpath":"./provider-ranking.feature","importPath":"@lssm-tech/module.provider-ranking/provider-ranking.feature","target":"./src/provider-ranking.feature.ts","targets":[{"conditions":[],"target":"./src/provider-ranking.feature.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/provider-ranking.feature.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/provider-ranking.feature.ts","sourceStatus":"verified source file"}]},{"subpath":"./storage","importPath":"@lssm-tech/module.provider-ranking/storage","target":"./src/storage/index.ts","targets":[{"conditions":[],"target":"./src/storage/index.ts","sourcePath":"packages/platform/agents/provider-ranking-module/src/storage/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/src/storage/index.ts","sourceStatus":"verified source file"}]}],"entryCount":8,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Module Provider Ranking documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.provider-ranking","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/module.provider-ranking.txt"},"readme":{"status":"available","body":"# @lssm-tech/module.provider-ranking\n\nWebsite: https://contractspec.io\n\n**Provider-ranking module that adds persistence adapters and pipeline orchestration on top of lower-level ranking logic.**\n\n## What It Provides\n\n- Coordinates ingest, storage, scoring, and ranking refresh flows over provider benchmark data.\n- Exposes entities, pipelines, and storage interfaces for ranking-aware applications.\n- Sits between ranking libraries and deployable MCP or application shells.\n- `src/pipeline/` contains pipeline stages and orchestration helpers.\n\n## Installation\n\n`npm install @lssm-tech/module.provider-ranking`\n\nor\n\n`bun add @lssm-tech/module.provider-ranking`\n\n## Usage\n\nImport the root entrypoint from `@lssm-tech/module.provider-ranking`, or choose a documented subpath when you only need one part of the package surface.\n\n## Architecture\n\n- `src/entities/` defines ranking-related domain shapes.\n- `src/pipeline/` contains ingestion and ranking orchestration stages.\n- `src/storage/` contains persistence-facing interfaces and implementations.\n- `src/index.ts` exposes the composed module surface.\n\n## Public Entry Points\n\n- Exports entities, pipeline helpers, named pipeline entrypoints, and storage surfaces.\n- Export `.` resolves through `./src/index.ts`.\n- Export `./entities` resolves through `./src/entities/index.ts`.\n- Export `./pipeline` resolves through `./src/pipeline/index.ts`.\n- Export `./pipeline/ingestion-pipeline` resolves through `./src/pipeline/ingestion-pipeline.ts`.\n- Export `./pipeline/ranking-pipeline` resolves through `./src/pipeline/ranking-pipeline.ts`.\n- Export `./storage` resolves through `./src/storage/index.ts`.\n\n## Local Commands\n\n- `bun run dev` — contractspec-bun-build dev\n- `bun run build` — contractspec-bun-build build\n- `bun run lint` — bun lint:fix\n- `bun run lint:check` — biome check .\n- `bun run lint:fix` — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .\n- `bun run typecheck` — tsgo --noEmit\n- `bun run publish:pkg` — bun publish --tolerate-republish --ignore-scripts --verbose\n- `bun run publish:pkg:canary` — bun publish:pkg --tag canary\n- `bun run clean` — rimraf dist .turbo\n- `bun run build:bundle` — contractspec-bun-build transpile\n- `bun run build:types` — contractspec-bun-build types\n- `bun run prebuild` — contractspec-bun-build prebuild\n\n## Recent Updates\n\n- Replace eslint+prettier by biomejs to optimize speed.\n- Resolve lint, build, and type errors across nine packages.\n- Add Composio universal fallback, fix provider-ranking types, and expand package exports.\n- Add first-class transport, auth, versioning, and BYOK support across all integrations.\n- Add AI provider ranking system with ranking-driven model selection.\n\n## Notes\n\n- Depends on `lib.provider-ranking` for scoring logic and ingesters -- this module adds persistence and orchestration.\n- Pipeline stages must be idempotent; re-ingesting the same benchmark data should not create duplicates.\n- Storage adapters are swappable -- always code against the interface, not the implementation.\n\n## MCP registries\n\n`@lssm-tech/module.provider-ranking/mcp` owns the provider-ranking MCP surface\nshared by the `provider-ranking-mcp` app and the docs-site handler in\n`bundle.library`: `createProviderRankingMcpRegistries({ store, ingesterRegistry? })`\nreturns the operation registry (`benchmark.ingest`, `benchmark.runCustom`,\n`ranking.refresh`), the `ranking://` resources (leaderboard and per-dimension\nleaderboard with optional `transport`/`authMethod` filters, model profile with\n`lib.ai-providers` enrichment, raw results) and the `ranking.advisor` prompt.\n`store` may be a resolver called per request. Hosts own the MCP server or HTTP\nhandler, logging and the store lifetime. The handlers keep the command output\nshapes (`ingestedAt`, `status`) and do not route through `IngestionPipeline` /\n`RankingPipeline`, which return different shapes, record ingestion runs and\nreport ingest failures as results rather than errors.\n","sourcePath":"packages/platform/agents/provider-ranking-module/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/agents/provider-ranking-module/README.md","blobSha":"19b2b72bb6f8034f6ead965a9da3a12d48007006","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","origin":"README recovered byte-for-byte from pinned aggregate guide","integrity":"exact Git blob match","executionStatus":"not executed"},"provenance":{"repository":"lssm-tech/contractspec","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","manifestOrigin":"pinned GitHub manifest fetch","manifestComplete":true,"publicationPolicyApplied":false},"areaSlug":"integrations-and-providers","areaTitle":"Integrations and provider selection","displayName":"module.provider-ranking","runtimes":["node"],"platforms":["server"],"kind":"module","scope":"Package manifest","canonicalRoute":"/docs/packages/module.provider-ranking/","contextUrl":"/docs/packages/module.provider-ranking.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}