config: describe what test_mode still controls

The comments on server.test_mode predated the testmode build tag and
still claimed the flag allows HTTP DID resolution (appview) or changes
OAuth redirects (hold). Neither is true: DID resolution is decided at
build time now, and the hold's OAuth redirect never read the flag. Say
what remains behind the runtime switch on each side and point at the
build tag for the rest.

Only the comment lines in the example YAMLs are updated; the examples
carry hand-edited values and are not regenerated.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UwYzaG3Yy7uA8FbZ5qk3tQ
This commit is contained in:
Evan Jarrett
2026-09-11 10:54:18 -05:00
co-authored by Claude Fable 5.1
parent a01b08b924
commit d8643ee03a
4 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ server:
addr: :5000
# Public-facing URL for OAuth callbacks and JWT realm. Auto-detected if empty.
base_url: ""
# Allows HTTP (not HTTPS) for DID resolution and uses transition:generic OAuth scope.
# Local development only. Routes pushes to the default hold when the user's chosen hold is unreachable and quiets backfill warnings about external holds. Does not affect DID resolution: that needs a -tags testmode build.
test_mode: false
# Display name shown on OAuth authorization screens.
client_name: AT Container Registry
+1 -1
View File
@@ -43,7 +43,7 @@ server:
public: false
# DID of successor hold for migration. Appview redirects all requests to the successor.
successor: ""
# Use localhost for OAuth redirects during development.
# Local development only. Skips relay crawl requests (a local hold is not reachable by public relays) and tolerates an appview token issuer that differs from appview_did. Does not affect DID resolution: that needs a -tags testmode build.
test_mode: false
# Endpoints used for proactive scan discovery. MUST support com.atproto.sync.listReposByCollection. Also sent requestCrawl on startup (best-effort, in addition to built-in known relays).
relay_endpoints:
+1 -1
View File
@@ -56,7 +56,7 @@ type ServerConfig struct {
BaseURL string `yaml:"base_url" comment:"Public-facing URL for OAuth callbacks and JWT realm. Auto-detected if empty."`
// Allows HTTP (not HTTPS) for DID resolution.
TestMode bool `yaml:"test_mode" comment:"Allows HTTP (not HTTPS) for DID resolution and uses transition:generic OAuth scope."`
TestMode bool `yaml:"test_mode" comment:"Local development only. Routes pushes to the default hold when the user's chosen hold is unreachable and quiets backfill warnings about external holds. Does not affect DID resolution: that needs a -tags testmode build."`
// Display name shown on OAuth authorization screens.
ClientName string `yaml:"client_name" comment:"Display name shown on OAuth authorization screens."`
+1 -1
View File
@@ -161,7 +161,7 @@ type ServerConfig struct {
Successor string `yaml:"successor" comment:"DID of successor hold for migration. Appview redirects all requests to the successor."`
// Use localhost for OAuth redirects during development.
TestMode bool `yaml:"test_mode" comment:"Use localhost for OAuth redirects during development."`
TestMode bool `yaml:"test_mode" comment:"Local development only. Skips relay crawl requests (a local hold is not reachable by public relays) and tolerates an appview token issuer that differs from appview_did. Does not affect DID resolution: that needs a -tags testmode build."`
// Relay endpoints used primarily for proactive scan discovery via
// com.atproto.sync.listReposByCollection. Endpoints listed here MUST