Repository navigation
[delight] User Experience Analysis Report - 2026-09-10 #59999
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Delight. A newer discussion is available at Discussion #60288. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Executive Summary
Today's analysis focused on:
mcp-gateway.mdspecification,2026-09-09-agent-of-the-day.mdblog post)smoke-deepseek-harness.md,daily-credit-limit-test.md)pkg/workflow/lock_validation.go)CLI help-text sampling was skipped this run: the
gh-awbinary could not be built in this sandbox (offline Go toolchain download was blocked), so no CLI commands could be exercised safely.Overall Quality: Mostly professional, with one concrete accuracy defect found in a formal specification document.
Key Finding: The MCP Gateway Specification (
docs/src/content/docs/reference/mcp-gateway.md) mixes JSON and TOML configuration syntaxes inconsistently within the same document, creating a real risk that operators copy-paste an example in the wrong format for their deployment method.Quality Highlights ✅
Example 1: Blog Post — "Agent of the Day" (PureLock)
docs/src/content/docs/blog/2026-09-09-agent-of-the-day.mdgofmt,go vet, andgo test -racepass recorded directly in the PR body — no unverified assertions, no rubber-stamped merges." This is exactly the kind of trust-building, precise communication enterprise documentation should aim for.Example 2: Error Messages in Lock File Validation
pkg/workflow/lock_validation.go"lock file %s uses unsupported schema version '%s'.\n\nThis file was generated by a newer version of gh-aw...\n\nTo fix this:\n 1. Upgrade gh-aw: gh extension upgrade gh-aw\n 2. Or downgrade the lock file by editing the source .md file and recompiling:\n gh aw compile %s"— states the problem, explains why, and gives two concrete resolution paths.Improvement Opportunities 💡
High Priority
Opportunity 1: Inconsistent Configuration Syntax in MCP Gateway Specification
docs/src/content/docs/reference/mcp-gateway.mdpayloadDir,payloadPathPrefix,agentId). However, Sections 4.1.3.2 (line 330), 4.1.3.3 (line 363), and 4.1.3.9 (line 640) show configuration examples in TOML syntax with snake_case field names (payload_dir,payload_path_prefix,agent_id), introduced without explanation of when TOML applies vs. JSON.mcpgCLI, referenced only once at line 639), or an error. The spec's own Section 4.1 states JSON is the required configuration format, directly contradicting the TOML examples that follow.mcpgCLI/local config file format (a separate consumer), distinct from the JSON payload the gateway process itself reads via stdin — or convert the TOML examples to JSON if they are meant to represent the same configuration surface.Files Reviewed
Documentation
docs/src/content/docs/reference/mcp-gateway.md- Rating:docs/src/content/docs/blog/2026-09-09-agent-of-the-day.md- Rating: ✅ ProfessionalCLI Commands
gh-awbinary available)Workflow Messages
.github/workflows/smoke-deepseek-harness.md- Rating: ✅ Professional.github/workflows/daily-credit-limit-test.md- Rating: ✅ ProfessionalValidation Code
pkg/workflow/lock_validation.go- Rating: ✅ ProfessionalMetrics
🎯 Actionable Tasks
One targeted improvement task, affecting a single file:
Task 1: Clarify JSON vs. TOML Configuration Syntax in MCP Gateway Specification
File to Modify:
docs/src/content/docs/reference/mcp-gateway.mdCurrent Experience
Section 4.1 ("Configuration Format", ~line 163) states unambiguously:
All field-reference tables that follow (Sections 4.1.2, 4.1.3) use camelCase JSON field names (
payloadDir,payloadPathPrefix,agentId,agentIds). Yet three later subsections present configuration examples in TOML with snake_case names:**mcpg TOML spelling**:The
mcpgname only appears once (line 640), so a reader who reaches the earlier TOML block at line 330 has no indication that a different tool/config surface is being described.Quality Issue
Design Principle: Clarity and Precision — a formal specification should never leave the reader guessing which configuration format applies where.
Introducing an unlabeled TOML dialect partway through a document that opens by mandating JSON creates ambiguity about which format is authoritative for the gateway's actual stdin input versus an unrelated CLI tool's local config file. This is a correctness/precision gap, not a style nit — it could lead to real misconfiguration.
Proposed Improvement
Label every TOML example with the same explanatory framing already used (but only once) at line 640, so each occurrence is unambiguous on its own.
Before (line ~328-336):
Configuration Example (
mcpgTOML spelling — separate CLI config file, not the gateway's JSON stdin payload):All reactions