Skip to content

docs: add ADC user documentation#524

Merged
kayx23 merged 5 commits into
mainfrom
bzp/docs-initial
Jul 9, 2026
Merged

docs: add ADC user documentation#524
kayx23 merged 5 commits into
mainfrom
bzp/docs-initial

Conversation

@bzp2010

@bzp2010 bzp2010 commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR adds user-facing ADC documentation to the source repo. It keeps detailed ADC docs with the ADC codebase, while the docs site can later link to this repo as the source of truth instead of duplicating the full ADC reference.

The new docs cover:

  • Getting started from the root README and docs/README.md
  • A declarative workflow guide for configuring a backend, authoring files, linting, validating, diffing, syncing, dumping, and using ADC in CI
  • Focused guides for label selectors and resource IDs
  • Reference pages for CLI commands, ADC configuration files, and OpenAPI conversion

The restructure preserves the product-authored information from the original draft, but reorganizes it into clearer guide/reference categories. Factual behavior was checked against source code and tests, including CLI command definitions, label selector loading/filtering, resource ID generation/diff behavior, and OpenAPI converter implementation/test fixtures.

Validation

  • pnpm exec prettier --check README.md docs/README.md docs/guides/workflow.md docs/guides/resource-ids.md docs/guides/label-selector.md docs/reference/cli.md docs/reference/configuration.md docs/reference/openapi-converter.md
  • git diff --check
  • pnpm exec nx test converter-openapi

Checklist

  • I have explained the need for this PR and the problem it solves
  • I have explained the changes or the new features added to this PR
  • I have added tests corresponding to this change, or explained why tests are not needed
  • I have updated the documentation to reflect this change
  • I have verified that this change is backward compatible

Tests are not added because this is a documentation-only change. Targeted validation is listed above.

Summary by CodeRabbit

  • Documentation
    • Added a README entry directing users to the docs/ area for CLI, configuration, and full ADC workflow guidance.
    • Created an ADC “Documentation” landing page with links to workflow, resource IDs, label selector, CLI command reference, configuration reference, and OpenAPI converter reference.
    • Added detailed guides for --label-selector scoping/semantics, backend resource id handling, and an end-to-end ADC workflow.
    • Published complete CLI, configuration-file, and OpenAPI conversion reference docs (including x-adc-* extensions).

@coderabbitai

coderabbitai Bot commented Jul 7, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR adds a new documentation suite under docs/, including a landing page, CLI command reference, configuration reference, OpenAPI converter reference, and guides for workflow, resource IDs, and label selectors. README.md is updated with a pointer to the new docs.

Changes

ADC Documentation

Layer / File(s) Summary
README pointer and docs landing page
README.md, docs/README.md
README gains a Documentation section pointing to docs/; a new landing page links to all reference and guide pages.
CLI command reference
docs/reference/cli.md
Documents global options, backend configuration, common flags, and per-command usage for ping, lint, sync, dump, diff, validate, convert openapi, and help.
Configuration file reference
docs/reference/configuration.md
Documents top-level config keys, a full adc.yaml example, variable syntax options, and schema reference tables for major resource types.
OpenAPI converter reference
docs/reference/openapi-converter.md
Documents x-adc-* extension fields, service-splitting behavior, plugin merge/override precedence across levels, and a full conversion example.
Workflow guide
docs/guides/workflow.md
Walks through configuring ADC, authoring config, linting, diffing, syncing, dumping, and converting from OpenAPI.
Resource IDs guide
docs/guides/resource-ids.md
Explains derived ID rules, rename implications, and adoption of pre-existing resources.
Label selector guide
docs/guides/label-selector.md
Documents --label-selector syntax, remote/local filtering semantics, and a multi-team example.

Estimated code review effort: 2 (Simple) | ~15 minutes

Possibly related PRs

  • api7/adc#447: Both PRs document the OpenAPI converter's supported x-adc-* extension fields.
🚥 Pre-merge checks | ✅ 6
✅ Passed checks (6 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
E2e Test Quality Review ✅ Passed PASS: This commit only changes docs/reference/configuration.md; no executable code or tests are touched, so E2E coverage isn’t applicable.
Security Check ✅ Passed Docs-only PR; no code paths, secret storage, logging, auth, or TLS config changes were introduced.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding user-facing ADC documentation to the repository.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch bzp/docs-initial

Comment @coderabbitai help to get the list of available commands.

@bzp2010 bzp2010 marked this pull request as draft July 7, 2026 09:00
@bzp2010

bzp2010 commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai pause

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/guides/label-selector.md`:
- Around line 38-42: The fenced example in the label-selector documentation is
using a bare code fence, which triggers markdownlint. Update the example to
declare an explicit language hint on the fence (for example, text) while keeping
the existing explanatory content unchanged so the docs lint cleanly.
- Around line 34-35: The scope description in the label selector guide is too
narrow and should reflect that remote filtering applies to every top-level
resource collection except global_rules and plugin_metadata. Update the wording
in the label selector docs to make the exhaustive scope explicit, using the
surrounding explanation of ADC fetch behavior and the top-level resource
granularity to clarify that services, consumers, ssls, and any other top-level
collections are included unless explicitly exempted.

In `@docs/reference/configuration.md`:
- Around line 70-90: The sample credentials in the configuration documentation
use values that resemble real API keys, so replace them with clearly fake
placeholder strings in the consumers example. Update the example under the
consumers section to keep the same structure and symbols such as username,
credentials, and key-auth, but use unmistakable non-secret placeholder values
for each key field so readers cannot mistake them for real credentials.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 7e6fadf0-ec0b-4bd2-8453-60490846202c

📥 Commits

Reviewing files that changed from the base of the PR and between 35e8114 and 7ae7867.

📒 Files selected for processing (8)
  • README.md
  • docs/README.md
  • docs/guides/label-selector.md
  • docs/guides/resource-ids.md
  • docs/guides/workflow.md
  • docs/reference/cli.md
  • docs/reference/configuration.md
  • docs/reference/openapi-converter.md

Comment thread docs/guides/label-selector.md Outdated
Comment thread docs/guides/label-selector.md Outdated
Comment thread docs/reference/configuration.md
@coderabbitai

coderabbitai Bot commented Jul 7, 2026

Copy link
Copy Markdown
✅ Action performed

Reviews paused.

@kayx23 kayx23 changed the title docs draft docs: add ADC user documentation Jul 9, 2026
@kayx23 kayx23 marked this pull request as ready for review July 9, 2026 17:43

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: eaf8a4ebe8

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/reference/cli.md Outdated

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR adds a set of user-facing ADC documentation pages (guides + references) within the source repository, and links to them from the root README so the repo can act as the canonical documentation source.

Changes:

  • Added a docs landing page plus workflow/resource ID/label selector guides under docs/.
  • Added reference docs for CLI commands, configuration format, and OpenAPI conversion behavior.
  • Linked the root README.md to the new documentation entry point.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
README.md Adds a “Documentation” section linking to the new docs entry point.
docs/README.md New documentation landing page that routes readers to guides and references.
docs/guides/workflow.md New end-to-end workflow guide (configure, lint/validate/diff/sync, CI flow).
docs/guides/resource-ids.md New explanation of how ADC generates/matches IDs and implications for adoption/renames.
docs/guides/label-selector.md New guide describing label selector scoping, filtering behavior, and limits.
docs/reference/cli.md New CLI reference (global options, backend options, command examples).
docs/reference/configuration.md New configuration reference covering structure, variables, and core schema fields.
docs/reference/openapi-converter.md New OpenAPI converter reference describing supported x-adc-* extensions and behavior.

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

Comment thread docs/reference/cli.md
Comment thread docs/reference/cli.md
Comment thread docs/reference/openapi-converter.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6f11d53e95

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/reference/configuration.md Outdated
Comment thread docs/reference/configuration.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: caa8691957

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/reference/configuration.md Outdated

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

@kayx23 kayx23 merged commit 06d3943 into main Jul 9, 2026
33 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3f9dddffe3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

| ---------------- | ------ | -------- | ------------------------------------------------------------------------------------------------ |
| `id` | string | No | Explicit backend ID for named upstreams. |
| `name` | string | No | Upstream name. |
| `scheme` | string | No | Protocol: `http`, `https`, `grpc`, `grpcs`. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Document all supported upstream schemes

For stream-route or Kafka upstream configs, this line tells users that only http, https, grpc, and grpcs are valid, but the ADC schema also accepts tcp, tls, udp, and kafka for upstream.scheme (upstreamSchemeSchema / schema.json). Following this reference can make users choose the wrong protocol for non-HTTP traffic or conclude ADC cannot manage those upstreams, so the documented valid values should match the schema.

Useful? React with 👍 / 👎.

@kayx23 kayx23 deleted the bzp/docs-initial branch July 9, 2026 18:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants