From 4551ee28791101afdf4a0b720f25e377e4994bae Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 18 May 2026 11:59:57 +0000 Subject: [PATCH 1/2] [docs] Update documentation for features from 2026-05-18 - Document new checkout.clean-git-credentials field (#32819) - Fix max-file-size default in repo-memory reference (10KB -> 100KB, #32826) - Add AgentDB to shared MCP servers list (#32771) Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/src/content/docs/guides/mcps.md | 1 + docs/src/content/docs/reference/checkout.md | 14 ++++++++++++++ docs/src/content/docs/reference/repo-memory.md | 4 ++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/src/content/docs/guides/mcps.md b/docs/src/content/docs/guides/mcps.md index fc620ce8a74..77035eca227 100644 --- a/docs/src/content/docs/guides/mcps.md +++ b/docs/src/content/docs/guides/mcps.md @@ -209,6 +209,7 @@ Pre-configured MCP server specifications are available in [`.github/workflows/sh |------------|-------------|------------------| | **Jupyter** | `shared/mcp/jupyter.md` | Execute code, manage notebooks, visualize data | | **Drain3** | `shared/mcp/drain3.md` | Log pattern mining with 8 tools including `index_file`, `list_clusters`, `find_anomalies` | +| **AgentDB** | `shared/mcp/agentdb.md` | Semantic and hybrid retrieval over agent-collected corpora (e.g. discussions, issues), backed by a runtime store at `AGENTDB_PATH` | | **Others** | `shared/mcp/*.md` | AST-Grep, Azure, Brave Search, Context7, DataDog, DeepWiki, Fabric RTI, MarkItDown, Microsoft Docs, Notion, Sentry, Serena, Server Memory, Slack, Tavily | ## Adding MCP Servers from the Registry diff --git a/docs/src/content/docs/reference/checkout.md b/docs/src/content/docs/reference/checkout.md index d95e25509a3..fb55828fe29 100644 --- a/docs/src/content/docs/reference/checkout.md +++ b/docs/src/content/docs/reference/checkout.md @@ -57,6 +57,7 @@ checkout: | `submodules` | string/bool | Submodule handling: `"recursive"`, `"true"`, or `"false"`. | | `lfs` | boolean | Download Git LFS objects. | | `current` | boolean | Marks this checkout as the primary working repository. The agent uses this as the default target for all GitHub operations. Only one checkout may set `current: true`; the compiler rejects workflows where multiple checkouts enable it. | +| `clean-git-credentials` | boolean | When `true`, the checkout step is generated with `persist-credentials: true` and followed by a dedicated cleanup step that scrubs both repo and submodule git credentials. Use this for submodule-heavy or sparse checkouts where the default `persist-credentials: false` post-step cleanup fails. See [Cleaning Submodule Credentials](#cleaning-submodule-credentials). | ## Fetching Additional Refs @@ -128,6 +129,19 @@ checkout: > > Without this instruction, the agent starts in `$GITHUB_WORKSPACE` (the side repository checkout) and must infer the correct directory on its own. +## Cleaning Submodule Credentials + +By default, generated checkout steps set `persist-credentials: false`, which causes `actions/checkout` to remove credentials in its post-step. In repositories with submodules or sparse checkouts, that post-step can fail with missing submodule URL or path errors. + +Set `clean-git-credentials: true` on a checkout target to opt into an explicit cleanup step instead. The compiler emits the checkout with `persist-credentials: true`, then injects a `Clean git credentials after checkout` step immediately after it. The cleanup removes the credential helper and `http.*.extraheader` entries from both `.git/config` and any `.git/modules/*/config`, including nested submodules. + +```yaml wrap +checkout: + - repository: org/monorepo-with-submodules + submodules: recursive + clean-git-credentials: true +``` + ## Checkout Merging Multiple `checkout:` configurations can target the same path and repository. This is useful for monorepos where different parts of the repository must be merged into the same workspace directory with different settings (e.g., sparse checkout for some paths, full checkout for others). diff --git a/docs/src/content/docs/reference/repo-memory.md b/docs/src/content/docs/reference/repo-memory.md index a57f41f71e8..a0c474888fd 100644 --- a/docs/src/content/docs/reference/repo-memory.md +++ b/docs/src/content/docs/reference/repo-memory.md @@ -28,7 +28,7 @@ tools: branch-prefix: tracking # Custom prefix instead of "memory" description: "Long-term insights" file-glob: ["*.md", "*.json"] - max-file-size: 1048576 # 1MB (default 10KB) + max-file-size: 1048576 # 1MB (default 100KB) max-file-count: 50 # default 100 max-patch-size: 1048576 # 1MB max (default 10KB) target-repo: "owner/repository" @@ -88,7 +88,7 @@ For fast 7-day caching without version control, see [Cache Memory](/gh-aw/refere ## Troubleshooting - **Branch not created**: Ensure `create-orphan: true` or create manually. -- **Validation failures**: Match `file-glob`, stay under `max-file-size` (10KB default), `max-file-count` (100 default), and `max-patch-size` (10KB default). +- **Validation failures**: Match `file-glob`, stay under `max-file-size` (100KB default), `max-file-count` (100 default), and `max-patch-size` (10KB default). - **Patch too large**: If the total diff exceeds `max-patch-size` (default 10KB), the push is rejected. Reduce the number or size of changes, or increase `max-patch-size` in the configuration. - **Changes not persisting**: Check directory path, workflow completion, push errors in logs. - **Merge conflicts**: Concurrent pushes are handled: if another run has pushed since the branch was checked out, the GraphQL mutation replays your file diff on top of the latest remote state (your changes win). From fb9678e3a46d49ccc0082b6d77b56241c1d8ceac Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 18 May 2026 12:23:52 +0000 Subject: [PATCH 2/2] fix: rename clean-git-credentials to force-clean-git-credentials in checkout docs Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --- docs/src/content/docs/reference/checkout.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/src/content/docs/reference/checkout.md b/docs/src/content/docs/reference/checkout.md index fb55828fe29..dc0f785f2e0 100644 --- a/docs/src/content/docs/reference/checkout.md +++ b/docs/src/content/docs/reference/checkout.md @@ -57,7 +57,7 @@ checkout: | `submodules` | string/bool | Submodule handling: `"recursive"`, `"true"`, or `"false"`. | | `lfs` | boolean | Download Git LFS objects. | | `current` | boolean | Marks this checkout as the primary working repository. The agent uses this as the default target for all GitHub operations. Only one checkout may set `current: true`; the compiler rejects workflows where multiple checkouts enable it. | -| `clean-git-credentials` | boolean | When `true`, the checkout step is generated with `persist-credentials: true` and followed by a dedicated cleanup step that scrubs both repo and submodule git credentials. Use this for submodule-heavy or sparse checkouts where the default `persist-credentials: false` post-step cleanup fails. See [Cleaning Submodule Credentials](#cleaning-submodule-credentials). | +| `force-clean-git-credentials` | boolean | When `true`, the checkout step is generated with `persist-credentials: true` and followed by a dedicated cleanup step that scrubs both repo and submodule git credentials. Use this for submodule-heavy or sparse checkouts where the default `persist-credentials: false` post-step cleanup fails. See [Cleaning Submodule Credentials](#cleaning-submodule-credentials). | ## Fetching Additional Refs @@ -133,13 +133,13 @@ checkout: By default, generated checkout steps set `persist-credentials: false`, which causes `actions/checkout` to remove credentials in its post-step. In repositories with submodules or sparse checkouts, that post-step can fail with missing submodule URL or path errors. -Set `clean-git-credentials: true` on a checkout target to opt into an explicit cleanup step instead. The compiler emits the checkout with `persist-credentials: true`, then injects a `Clean git credentials after checkout` step immediately after it. The cleanup removes the credential helper and `http.*.extraheader` entries from both `.git/config` and any `.git/modules/*/config`, including nested submodules. +Set `force-clean-git-credentials: true` on a checkout target to opt into an explicit cleanup step instead. The compiler emits the checkout with `persist-credentials: true`, then injects a `Clean git credentials after checkout` step immediately after it. The cleanup removes the credential helper and `http.*.extraheader` entries from both `.git/config` and any `.git/modules/*/config`, including nested submodules. ```yaml wrap checkout: - repository: org/monorepo-with-submodules submodules: recursive - clean-git-credentials: true + force-clean-git-credentials: true ``` ## Checkout Merging