Skip to content

Conversation

@github-actions
Copy link
Contributor

Summary

Reduced documentation bloat in troubleshooting/errors.md by eliminating repetitive structure and verbose descriptions while preserving all essential information.

Key improvements:

  • Reduced from 546 to 317 lines (42% reduction)
  • Eliminated repetitive "Error Message:", "Cause:", "Solution:" headers
  • Removed redundant code blocks around error messages
  • Condensed verbose explanations to be more direct and actionable
  • Improved readability by reducing visual noise

Changes Made

Before: Each error followed this verbose pattern:

### Error Name

**Error Message:**

```text
error message here
```text

**Cause:** Long explanation of the cause.

**Solution:** Detailed step-by-step solution.

After: Each error now uses a concise, direct format:

### Error Name

`error message here`

Brief explanation with direct solution guidance.

Impact

  • Readability: Easier to scan and find relevant errors
  • Maintainability: Less repetitive structure to maintain
  • User experience: Faster time to solution with more direct guidance
  • Content preserved: All technical information retained

Test Plan

  • Verified all error messages are still present
  • Confirmed all solutions remain actionable
  • Ensured no essential information was lost
  • Updated cache memory to track cleanup

Issues

Screenshot Capture Failed

Unable to capture screenshots due to containerized environment limitations. Playwright runs in a container that cannot access localhost:4321 where the preview server runs. This is a known limitation in GitHub Actions environments.

Details:

  • Preview server started successfully on 127.0.0.1:4321
  • Playwright browser installed successfully
  • Network isolation prevents container-to-host communication
  • Error: `net::ERR_CONNECTION_REFUSED at (localhost/redacted)

Recommendation: Screenshots can be captured in a local development environment or by running the preview server with --host flag to bind to 0.0.0.0 instead of 127.0.0.1.

References

File cleaned: docs/src/content/docs/troubleshooting/errors.md
Lines reduced: 546 → 317 (42% reduction)
Cache updated: /tmp/gh-aw/cache-memory/cleaned-files.txt

🤖 Generated with [Claude Code]((claude.com/redacted)

AI generated by Documentation Unbloat

  • expires on Feb 12, 2026, 5:50 PM UTC

- Reduced from 546 to 317 lines (42% reduction)
- Eliminated repetitive 'Error Message:', 'Cause:', 'Solution:' structure
- Removed redundant code blocks around error messages
- Condensed verbose explanations while preserving all essential information
- Made descriptions more direct and concise

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@github-actions github-actions bot added automation documentation Improvements or additions to documentation labels Feb 10, 2026
@pelikhan pelikhan marked this pull request as ready for review February 10, 2026 18:04
Copilot AI review requested due to automatic review settings February 10, 2026 18:04
@pelikhan pelikhan merged commit 8908ac8 into main Feb 10, 2026
@pelikhan pelikhan deleted the docs/unbloat-errors-57a922189ed43f44 branch February 10, 2026 18:04
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Streamlines the troubleshooting error reference documentation by removing repetitive “Error Message/Cause/Solution” scaffolding and presenting each error in a more compact, scan-friendly format.

Changes:

  • Replaced repeated “Error Message / Cause / Solution” blocks with inline code-formatted error strings and brief guidance.
  • Removed redundant fenced code blocks around single-line error messages.
  • Condensed multi-step explanations into shorter actionable paragraphs and lists.
Comments suppressed due to low confidence (5)

docs/src/content/docs/troubleshooting/errors.md:217

  • The strict-mode write-permission error message is abbreviated here, but the actual error includes additional guidance (e.g., "for security reasons" and safe-outputs suggestions). Since this page is an error-message reference, consider updating the inline error string to match the emitted message (with placeholders if needed) so users can search/copy-paste it reliably.
### Strict Mode Write Permission Not Allowed

`strict mode: write permission 'contents: write' is not allowed`

Use `safe-outputs` instead of write permissions. Configure safe outputs like `create-issue` or `create-pull-request` with appropriate options.

docs/src/content/docs/troubleshooting/errors.md:223

  • This strict-mode wildcard-network error message is shortened compared to the emitted error (which includes rationale and a link to ecosystem identifiers). For an error reference, update the documented error string to match the actual message prefix (or full message) so it aligns with current compiler output.
### Strict Mode Network Wildcard Not Allowed

`strict mode: wildcard '*' is not allowed in network.allowed domains`

Replace the standalone `*` wildcard with specific domains, wildcard patterns (e.g., `*.cdn.example.com`), or ecosystem identifiers (e.g., `python`, `node`). Alternatively, use `network: defaults`.

docs/src/content/docs/troubleshooting/errors.md:259

  • The documented strict-mode MCP network error message omits key wording present in the emitted error (e.g., "top-level network configuration for security" and the suggested network: { allowed: [...] } shape). Please update the inline error string to match the actual output so users can grep/copy it accurately.
### Strict Mode Custom MCP Server Requires Network Configuration

`strict mode: custom MCP server 'my-server' with container must have network configuration`

Add network configuration with allowed domains to containerized MCP servers in strict mode.

docs/src/content/docs/troubleshooting/errors.md:271

  • strict mode: engine does not support firewall does not match the current strict-mode errors in the codebase (e.g., "strict mode: engine must support firewall when network restrictions (network.allowed) are set" or "strict mode: engine '' does not support firewall"). Please update this documented error message to reflect the actual emitted string(s).
### Engine Does Not Support Firewall

`strict mode: engine does not support firewall`

Use an engine with firewall support (e.g., `copilot`), compile without `--strict` flag, or use `network: defaults`.

docs/src/content/docs/troubleshooting/errors.md:161

  • The documented invalid on: section format message is abbreviated; the emitted error includes the received type and concrete examples of valid formats. Since this is an error reference, update the inline error string to match the actual output (with placeholders where appropriate).
### Invalid On Section Format

`invalid on: section format`

Verify the trigger configuration follows [GitHub Actions syntax](/gh-aw/reference/triggers/) (e.g., `on: push`, `on: { push: { branches: [main] } }`).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 207 to 212
### Strict Mode Network Configuration Required

**Error Message:**

```text
strict mode: 'network' configuration is required
```text
`strict mode: 'network' configuration is required`

**Cause:** The workflow is compiled with `--strict` flag but does not include network configuration. Strict mode requires explicit network permissions for security.

**Solution:** Add network configuration: use `network: defaults` (recommended), specify allowed domains explicitly, or deny all network access with `network: {}`.
Add network configuration: use `network: defaults` (recommended), specify allowed domains explicitly, or deny all network access with `network: {}`.

Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The documented strict-mode error strict mode: 'network' configuration is required does not appear to exist in the codebase; the compiler orchestrator defaults missing network config to Allowed: ["defaults"] and strict-mode network validation accepts that. This section should be revised to reflect the actual behavior (defaults applied automatically) and/or updated to the real error message(s) emitted by strict-mode validation.

This issue also appears in the following locations of the same file:

  • line 213
  • line 219
  • line 255
  • line 267

See below for a potential fix:


Copilot uses AI. Check for mistakes.
Comment on lines 151 to +155
### Manual Approval Invalid Format

**Error Message:**

```text
manual-approval value must be a string
```text

**Cause:** The `manual-approval:` field in the `on:` section has an incorrect type.
`manual-approval value must be a string`

**Solution:** Use a string value, e.g. `manual-approval: "Approve deployment to production"`.
Use a string value: `manual-approval: "Approve deployment to production"`.
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The documented manual-approval type error message is incomplete compared to the emitted error, which includes the actual type received and an example. Consider updating the inline error string to match the real message format (using placeholders like %T/[type]) to keep this page a reliable error reference.

This issue also appears on line 157 of the same file.

See below for a potential fix:

`manual-approval value must be a string (got [type])`

Use a string value: `manual-approval: "Approve deployment to production"`.

### Invalid On Section Format

`invalid on: section format (got [type])`

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automation documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant