Skip to content

docs: add Mermaid diagrams across README and docs - #16

Merged
christiangda merged 3 commits into
mainfrom
docs/mermaid-diagrams
Jul 11, 2026
Merged

docs: add Mermaid diagrams across README and docs#16
christiangda merged 3 commits into
mainfrom
docs/mermaid-diagrams

Conversation

@christiangda

Copy link
Copy Markdown
Contributor

Summary

Enriches the documentation with rendered Mermaid diagrams so the architecture, parsing pipeline, and AST are visual for readers on GitHub and pkg.go.dev. No code changes — docs and README only.

What's added

File Diagrams
README.md Request/data-flow overview · two-stage lexer→parser pipeline
docs/README.md Three-parsers-at-a-glance component diagram
docs/getting-started.md Request-lifecycle sequence diagram · build-once/reuse-per-request flow
docs/filtering.md Lexer→token→AST pipeline · operator-precedence ladder · worked AST tree · Node interface class diagram · IS-predicate grammar
docs/configuration.md Additive allow-list flow · gating decision · group→operator map · NOT negation-semantics
docs/error-handling.md QFV*Error type hierarchy · single-pass error-aggregation flow
docs/migration.md Before/after AST shape for the NOT IN change

17 diagrams total.

Accuracy & validation

  • Diagrams were derived directly from the source (lexer, recursive-descent parser, node types, options), e.g. the precedence ladder mirrors parseLogicalOr → parseLogicalAnd → parseComparison → parsePrimary, and the IS-predicate branch mirrors parseIsPredicate.
  • All 17 blocks were rendered successfully with @mermaid-js/mermaid-cli v11 to confirm they parse and display on GitHub.

Notes

Documentation-only change; existing prose is preserved and augmented, not replaced.

Enrich the documentation with rendered Mermaid diagrams so the
architecture, parsing pipeline, and AST are visual on GitHub:

- README: request/data-flow overview and two-stage lexer→parser pipeline
- docs/README: three-parsers-at-a-glance component diagram
- getting-started: request-lifecycle sequence + build-once/reuse flow
- filtering: lexer→token→AST pipeline, operator-precedence ladder,
  worked AST tree, Node interface class diagram, and IS-predicate grammar
- configuration: additive allow-list flow, gating decision, group→operator
  map, and NOT negation-semantics diagram
- error-handling: QFV*Error type hierarchy and single-pass aggregation flow
- migration: before/after AST shape for the NOT IN change

All 17 diagrams validated with @mermaid-js/mermaid-cli.
@christiangda christiangda self-assigned this Jul 11, 2026
Required by tooling (github.com/boyter/scc/v3 v3.7.0 needs go >= 1.25.2).
CI installs scc and go-test-coverage with @latest, and actions/setup-go
pins the runner Go to the go.mod version. go-test-coverage v2.18.8
requires go >= 1.26, so raise the minimum accordingly.
@christiangda
christiangda merged commit 4de8d3f into main Jul 11, 2026
4 checks passed
@christiangda
christiangda deleted the docs/mermaid-diagrams branch July 11, 2026 13:31
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.

1 participant