| name | 05-resources |
| description | Resource taxonomy and processing — common processing flow, per-resource feature points / special handling / cross-resource relationships. |
05 Resource Architecture
This directory describes the internal processing flow of each resource from Controller to Gateway: per-stage Handler logic, requeue relationships, source code locations.
The external contract of each resource (YAML schema, field types and defaults) lives in 02-features/03-resources/ — the numbering on the two sides is aligned, and code changes typically need to look at both.
Each resource document follows a unified structure:
- Common-flow reference — points to the common flow in 00-resource-flow.md
- Resource-specific behavior — concrete behavior of each Handler stage (filter/validate/preparse/parse/on_change/on_delete/update_status)
- Cross-resource relationships — references, cascading updates, and requeue relationships between this resource and others
File list
Resource relationship overview
Spec-level reference relationships (simplified):
GatewayClass ──────► Gateway ◄────── EdgionGatewayConfig
│
┌──────────┼──────────┐
▼ ▼ ▼
HTTPRoute GRPCRoute TCP/TLS/UDPRoute
│ │ │
▼ ▼ ▼
Service ──► EndpointSlice/Endpoint
│
▼
BackendTLSPolicy
Gateway ──► Secret (TLS certificates)
──► EdgionTls (extended TLS)
──► EdgionAcme (automatic certificates)
HTTPRoute/GRPCRoute ──► EdgionPlugins (HTTP plugins)
──► EdgionStreamPlugins (Stream plugins)
EdgionPlugins/EdgionStreamPlugins ──► EdgionConfigData (overlay/data primitive via overrideRef)
Cross-namespace references ──► ReferenceGrant
AccessLog/Plugin data ──► LinkSys (external systems)
Controller-internal Store queries and requeue cascades are documented in 19-resource-dependency.md.