ARADR-003: Provider census — every LLM provider gets a tracked compatibility issue #6
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/llm-log#6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Make provider coverage an explicit maintained backlog instead of a handful of hard-coded upstreams.
Every distinct LLM provider / gateway / managed endpoint family discovered by the provider census MUST have a dedicated
llm-logcompatibility issue. Provider support may share generic protocol adapters in implementation, but no provider gets silently collapsed into “OpenAI-compatible” and forgotten.This is a census + issue-generation slice first. It does not authorize implementing 200+ one-off adapters.
Initial authoritative census
Start from the live Models.dev provider catalog:
As of 2026-08-29 the provider page exposes 207 provider entries, including regional/token/coding-plan variants where the actual endpoint/auth/runtime contract differs.
Cross-check against:
models.devconsumption: https://opencode.ai/docs/providersllm-logbuilt-ins and actual client configs inlost-rob0t/dotfilesThe census is intentionally open-ended. A provider appearing later in a maintained upstream catalog is backlog, not “out of scope.”
Additional provider/runtime classes that must be represented even when absent from the hosted-provider census
Create dedicated issues for important self-hosted/local/gateway surfaces too, including at minimum:
If research finds another materially distinct local runtime or gateway, it gets an issue too.
One provider = one issue
For each census entry create or reconcile exactly one canonical provider-compatibility issue. Regional/plan variants may share a parent only when their transport, auth, path and streaming semantics are genuinely identical; otherwise they remain separate issues.
Suggested title:
Provider: <display name> — proxy/capture compatibilityEach provider issue must record:
Provider registry artifact
ARADR must persist a machine-readable provider registry in the repository, generated/reconciled from the census rather than maintained only in GitHub issue prose.
The registry needs stable provider IDs and at least:
Prefer a simple declarative format that works for Nix, Python tests and future Prolog projection without requiring network access at runtime.
Drift / “every provider ever” rule
Add a deterministic provider-census check that can compare the checked-in registry against the selected upstream catalog snapshot/API.
A newly discovered provider MUST result in one of:
The check must flag untracked providers. It must never silently drop a provider because it looks protocol-compatible with another provider.
Catalog removals must be retained as historical/deprecated registry entries rather than erasing compatibility history.
Auto-ARADR flow
Auto-RAGE implementation priorities
Do not implement alphabetically just because the census is huge. After issues exist, prioritize reusable protocol coverage:
A generic adapter may satisfy many provider issues at once, but each provider issue must receive explicit conformance evidence before being marked supported.
RED-first acceptance for implementation work
Before changing production proxy behavior for a protocol/provider, add the smallest legitimate failing conformance test proving the missing behavior on the untouched baseline. Provider-specific issues can reuse a shared parameterized conformance suite, but no issue is closed solely because another vendor passed it.
Acceptance criteria for this census slice
Non-goals