deepseek-harness/docs
Yichen Jiang ffd2f188f2 fix(llm): answer a catalog route's models from pi-ai's own registry
Clicking "fetch available models" on a built-in provider went to the
network. That is the wrong source: pi-ai's registry is the authoritative
list for its own providers, and it carries the context windows and output
caps a `GET /models` listing does not disclose. Asking api.deepseek.com
what DeepSeek serves is both slower and worse, and against an endpoint
that answers a different shape it failed outright.

Interrogation is still keyed by settings namespace — the provider being
added has no route — but the request may now name the route it is
editing. An adapter that already describes that route answers from what
it knows, needs no endpoint at all, and never touches the network; only a
route the catalog does not describe reaches the wire, and one naming no
endpoint is told to set one or enter its models by hand.

`ConfigurableProviderView` gained `supportsDiscovery` so a surface offers
the action where a namespace can answer instead of hardcoding an adapter
family.

Three narrower corrections ride along. Discovery no longer claims Azure
or Codex: Azure authenticates with an `api-key` header and an
`api-version` query despite its OpenAI lineage, and Codex uses OAuth, so
both reported an authentication failure as a provider with no models.
Cancellation during the body read escaped as the raw abort reason rather
than a coded ABORTED. And the schema comment claiming the probe key is
never logged overstated it: the host neither stores nor returns it, but
it rides the client's outgoing envelope like every other secret-bearing
payload, and redacting that tap is a configuration-plane-wide change.
2026-08-05 19:51:02 +08:00
..
cookbook docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
cordis-catalog fix(llm): answer a catalog route's models from pi-ai's own registry 2026-08-05 19:51:02 +08:00
cordis-tutorial docs(i18n): proofread active Chinese documentation 2026-08-04 17:36:14 +08:00
core-data-structures fix(llm): let a catalog route keep the auth its provider actually declares 2026-08-05 18:54:47 +08:00
i18n docs: apply hierarchy across the corpus 2026-08-05 16:13:28 +08:00
postmortem docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
user docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
agent-lifecycle.md refactor(agent): return request retry action 2026-07-27 21:17:49 +08:00
AGENTS.md docs: define hierarchy and document forms 2026-08-05 16:13:27 +08:00
architecture.i18n.yaml docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
architecture.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
architecture.zh.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
capability-seams.md Merge remote-tracking branch 'origin/master' into feat/pwsh-tool 2026-08-04 17:54:45 +08:00
config-catalog.md fix(llm): size unknown models and refuse a section that cannot be served 2026-08-05 18:54:23 +08:00
cordis-paper.pdf docs: add cordis paper 2026-07-31 15:54:36 +08:00
cordis-primer.i18n.yaml docs(i18n): proofread active Chinese documentation 2026-08-04 17:36:14 +08:00
cordis-primer.md Merge remote-tracking branch 'origin/master' into worktree/pr343-retarget-latest-master 2026-07-23 13:40:29 +08:00
cordis-primer.zh.md docs(i18n): proofread active Chinese documentation 2026-08-04 17:36:14 +08:00
defensive-patterns.i18n.yaml docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
defensive-patterns.md docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
defensive-patterns.zh.md docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
development.i18n.yaml docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
development.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
development.zh.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
event-producer-consumer.md feat(llm): interrogate a draft provider endpoint for its models 2026-08-05 19:50:11 +08:00
glossary.i18n.yaml docs(i18n): address proofreading review findings 2026-08-04 18:42:13 +08:00
glossary.md docs: align Goal Round step cardinality 2026-07-24 12:10:40 +08:00
glossary.zh.md docs(i18n): address proofreading review findings 2026-08-04 18:42:13 +08:00
graph-atlas.md cleanup: remove TUI package and legacy dsh entrypoints 2026-08-04 13:20:28 +08:00
module-graph.md Merge remote-tracking branch 'origin/master' into feat/pwsh-tool 2026-08-04 17:54:45 +08:00
persistence-catalog.md chore(docs): refresh the descriptor catalog pointer 2026-08-02 20:34:43 +08:00
testing.i18n.yaml docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
testing.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
testing.zh.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
tool-catalog.md docs(pwsh): scope the encoding claim, document the PATH probe and preamble limitation, and fix catalog requires lists 2026-08-02 19:37:45 +08:00
tool-execution-pipeline.md Merge remote-tracking branch 'origin/master' into feat/send-unify 2026-07-23 22:41:45 +08:00
web-styling.i18n.yaml docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
web-styling.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
web-styling.zh.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00