-
Notifications
You must be signed in to change notification settings - Fork 20
📚 Documentation Reconciliation Report - 2026-03-30 #2820
Description
Summary
Found 1 discrepancy between documentation and implementation during nightly reconciliation check.
- Workflow Run: §23727085463
- Date: 2026-03-30
- Branch: main
Minor Issues 🔵
1. GITHUB_PERSONAL_ACCESS_TOKEN missing from proxy mode env var docs
Location: docs/ENVIRONMENT_VARIABLES.md, Proxy Mode Variables table
Problem: The documentation only lists GITHUB_TOKEN / GH_TOKEN as the supported auth token variables for proxy mode. However, the code also accepts GITHUB_PERSONAL_ACCESS_TOKEN as a third fallback, checked in priority order.
Actual Behavior (code): internal/cmd/proxy.go:143–149
token = os.Getenv("GH_TOKEN") // checked first
token = os.Getenv("GITHUB_TOKEN") // checked second
token = os.Getenv("GITHUB_PERSONAL_ACCESS_TOKEN") // checked third (undocumented)
```
**Current documentation** (`docs/ENVIRONMENT_VARIABLES.md`, Proxy Mode Variables section):
```
| `GITHUB_TOKEN` / `GH_TOKEN` | GitHub auth token for the proxy to forward requests | (required) |Impact: Users who set only GITHUB_PERSONAL_ACCESS_TOKEN (a common GitHub token env var) may not realize it works as a fallback for proxy mode. The proxy will work, but users following the docs may not realize this is a valid option.
Suggested Fix: Update the Proxy Mode Variables table in docs/ENVIRONMENT_VARIABLES.md to include the third fallback:
| `GH_TOKEN` / `GITHUB_TOKEN` / `GITHUB_PERSONAL_ACCESS_TOKEN` | GitHub auth token for the proxy to forward requests (checked in priority order) | (required for upstream auth) |Code Reference: internal/cmd/proxy.go:139–153
Accurate Sections ✅
All other documentation was verified accurate against the implementation:
- Quick Start config format —
"apiKey"JSON field matchesStdinGatewayConfig.APIKey(json:"apiKey") ✅ - JSON stdin server fields —
container,entrypoint,entrypointArgs,mounts,env,typeall present inStdinServerConfig✅ - Go version — CONTRIBUTING.md specifies Go 1.25.0, matches
go.mod✅ - Make targets —
build,test,test-unit,test-integration,test-all,lint,coverage,install,format,test-ci,cleanall exist in Makefile ✅ - Binary name —
awmgmatches Makefile build target output ✅ - Feature list — TOML/JSON config,
\$\{VAR}expansion (JSON only), routed/unified modes, Docker support, WASM guards all implemented ✅ --config-stdinflag — exists ininternal/cmd/flags_core.go:36✅run.shdefault — starts on `(0.0.0.0/redacted) in routed mode, as documented in CONTRIBUTING.md ✅- Environment variables (
MCP_GATEWAY_PORT,MCP_GATEWAY_DOMAIN,MCP_GATEWAY_API_KEY) — all validated in code ✅ docs/CONFIGURATION.md,docs/ENVIRONMENT_VARIABLES.md— both files exist and are linked correctly from README ✅
Tested Commands
- ✅
make --dry-run build— confirms build target exists and callsgo build -o awmg - ✅
make --dry-run test/make --dry-run test-unit— confirmed as aliases - ✅
make --dry-run test-integration— auto-builds binary if needed, as documented - ✅
make --dry-run test-all— runs both unit and integration tests - ✅
make --dry-run lint— runs go vet, gofmt, golangci-lint - ✅
make --dry-run coverage— runs unit tests with coverage profile - ✅
make --dry-run install— verifies Go version, installs golangci-lint, downloads deps ⚠️ make build— fails in sandboxed CI (Go 1.25.0 toolchain download blocked atproxy.golang.org); expected to work in environments with internet access
Code References
- Configuration structs:
internal/config/config_core.go,internal/config/config_stdin.go - Proxy token fallback:
internal/cmd/proxy.go:139–153 - Environment variable env var list:
docs/ENVIRONMENT_VARIABLES.md
Generated by Nightly Documentation Reconciler · ◷
- expires on Apr 2, 2026, 3:56 AM UTC