Repository navigation
fix: resolve broken anchor and stale redirect (#615) - #637
Merged
Rachael-Graham merged 2 commits intoOct 20, 2026
Merged
Conversation
Heading text didn't match its explicit anchor id, breaking it only in the markdown export. Also fixed a stale Google Cloud redirect link. Signed-off-by: AnantKumar17 <74150586+AnantKumar17@users.noreply.github.com>
| Substrate matches a destination on the exact DNS hostname, without path, port, or scheme. Two credentials that target the same hostname and header are rejected, including a conflict between an agent's model, a memory embedding model, and an MCP server. Give such origins distinct DNS names. A destination given as an IP address cannot carry an injected credential at all. | ||
|
|
||
| ### Credentials that kagent rejects {#credentials-that-do-not-compile} | ||
| ### Credentials that do not compile {#credentials-that-do-not-compile} |
Contributor
There was a problem hiding this comment.
ahh i see what happened - I think this heading used to say Credentials that do not compile and had that explicit anchor, but was changed to Credentials that kagent rejects to be more accurate (nothing actually compiles here - credentials are rejected or accepted). But i likely forgot to change the explicit anchor to match.
so i think i'd rather we keep the heading but change the anchor
Suggested change
| ### Credentials that do not compile {#credentials-that-do-not-compile} | |
| ### Credentials that kagent rejects {#credentials-that-kagent-rejects} |
Or you can even remove the explicit anchor completely. And then do a search to see if the old anchor is being referenced anywhere.
| - The **`claude`** harness integrates only `Anthropic` and `Bedrock`. | ||
|
|
||
| A provider is available only when the harness integrates it and the egress gateway can inject its credential as a header. The `kagent` and `byo` harnesses integrate `AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore`, but the gateway cannot inject a Google service account key or a set of OAuth2 client credentials, so kagent rejects a ModelConfig that names any of the three on every harness. For the alternatives, see [Credentials that kagent rejects](#credentials-that-do-not-compile). | ||
| A provider is available only when the harness integrates it and the egress gateway can inject its credential as a header. The `kagent` and `byo` harnesses integrate `AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore`, but the gateway cannot inject a Google service account key or a set of OAuth2 client credentials, so kagent rejects a ModelConfig that names any of the three on every harness. For the alternatives, see [Credentials that do not compile](#credentials-that-do-not-compile). |
Contributor
There was a problem hiding this comment.
Suggested change
| A provider is available only when the harness integrates it and the egress gateway can inject its credential as a header. The `kagent` and `byo` harnesses integrate `AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore`, but the gateway cannot inject a Google service account key or a set of OAuth2 client credentials, so kagent rejects a ModelConfig that names any of the three on every harness. For the alternatives, see [Credentials that do not compile](#credentials-that-do-not-compile). | |
| A provider is available only when the harness integrates it and the egress gateway can inject its credential as a header. The `kagent` and `byo` harnesses integrate `AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore`, but the gateway cannot inject a Google service account key or a set of OAuth2 client credentials, so kagent rejects a ModelConfig that names any of the three on every harness. For the alternatives, see [Credentials that kagent rejects](#credentials-that-kagent-rejects). |
| | Field | Description | | ||
| | ----- | ----------- | | ||
| | `provider` | The provider to use.<ul><li>Accepted values are `OpenAI`, `Anthropic`, `AzureOpenAI`, `Ollama`, `Gemini`, `GeminiVertexAI`, `AnthropicVertexAI`, `Bedrock`, `SAPAICore`, `Foundry`, and `Mistral`.</li><li>Defaults to `OpenAI`.</li><li>`AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore` are rejected on every harness.</li></ul>For more information, see [Credentials that kagent rejects](#credentials-that-do-not-compile). | | ||
| | `provider` | The provider to use.<ul><li>Accepted values are `OpenAI`, `Anthropic`, `AzureOpenAI`, `Ollama`, `Gemini`, `GeminiVertexAI`, `AnthropicVertexAI`, `Bedrock`, `SAPAICore`, `Foundry`, and `Mistral`.</li><li>Defaults to `OpenAI`.</li><li>`AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore` are rejected on every harness.</li></ul>For more information, see [Credentials that do not compile](#credentials-that-do-not-compile). | |
Contributor
There was a problem hiding this comment.
(see explanation below)
Suggested change
| | `provider` | The provider to use.<ul><li>Accepted values are `OpenAI`, `Anthropic`, `AzureOpenAI`, `Ollama`, `Gemini`, `GeminiVertexAI`, `AnthropicVertexAI`, `Bedrock`, `SAPAICore`, `Foundry`, and `Mistral`.</li><li>Defaults to `OpenAI`.</li><li>`AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore` are rejected on every harness.</li></ul>For more information, see [Credentials that do not compile](#credentials-that-do-not-compile). | | |
| | `provider` | The provider to use.<ul><li>Accepted values are `OpenAI`, `Anthropic`, `AzureOpenAI`, `Ollama`, `Gemini`, `GeminiVertexAI`, `AnthropicVertexAI`, `Bedrock`, `SAPAICore`, `Foundry`, and `Mistral`.</li><li>Defaults to `OpenAI`.</li><li>`AnthropicVertexAI`, `GeminiVertexAI`, and `SAPAICore` are rejected on every harness.</li></ul>For more information, see [Credentials that kagent rejects](#credentials-that-kagent-rejects). | |
Review feedback: the heading was intentionally reworded to 'Credentials that kagent rejects' and the explicit anchor id was simply never updated to match, not the other way around. Repoint the anchor at the current heading instead of renaming the heading, and update the four other pages that link to it so none reference the stale anchor. Signed-off-by: AnantKumar17 <74150586+AnantKumar17@users.noreply.github.com>
Rachael-Graham
approved these changes
Oct 20, 2026
Rachael-Graham
left a comment
Contributor
There was a problem hiding this comment.
Thank you for contributing!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes part of #615 (partial).
Changes
Credentials that kagent rejectsheading toCredentials that do not compileinabout-model-providers.mdso it matches its explicit{#credentials-that-do-not-compile}anchor, and updated the two inbound link labels for consistency.cloud.google.com→docs.cloud.google.com) intune-agent-substrate.md.Root cause
The heading's explicit
{#id}works correctly in the HTML output, but the site also builds a parallel markdown (.md) export of every page (seehugo.yaml'soutputsconfig and the link-checker workflow's own comments on this). That export renders the heading as plain text, and the link checker slugifies that text to validate anchors — so the mismatched heading text broke the anchor only in the.mdexport. Renaming the heading to match the id fixes it in both output formats. Verified locally with a Hugo build comparing the generated HTMLidand the.mdexport's heading text/slug before and after the change.Not included
The two API reference struct-fragment links also reported in #615 (
api-ref/index.html/api-ref.md) are not addressed here —api-ref.mdis one of the auto-generated reference pages called out inCONTRIBUTION.md(regenerated automatically on each kagent release), so it should not be hand-edited in this PR.