Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 29 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,22 +21,40 @@ matters.

---

## Mental Model
## Architecture

An operator built with this framework has two layers between the controller and raw Kubernetes objects:

Comment on lines +24 to 27
Copy link

Copilot AI Apr 8, 2026

Choose a reason for hiding this comment

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

The new Mermaid diagram replaces the previous layer/responsibility table; as a result, the README no longer explains what each layer (controller/component/primitive) is responsible for. Consider restoring the responsibility table (or equivalent prose) under the diagram so readers can understand the semantics, not just the structure.

Copilot uses AI. Check for mistakes.
```
Controller
└─ Component
└─ Resource Primitive
└─ Kubernetes Object
```mermaid
graph TB
subgraph controller [" "]
R["⚪ Your Reconciler"]
end

subgraph components [" "]
C1["🔵 Web Interface component"]
C2["🔵 Monitoring component"]
end

subgraph primitives [" "]
P1["🟢 ConfigMap"]
P2["🟢 Deployment"]
P3["🟢 Service"]
P4["🟢 ServiceAccount"]
P5["🟢 DaemonSet"]
end

subgraph cluster [" "]
K["⚪ Kubernetes API"]
end

R --> C1 & C2
C1 --> P1 & P2 & P3
C2 --> P4 & P5
P1 & P2 & P3 & P4 & P5 --> K
Comment on lines 26 to +54
Copy link

Copilot AI Apr 8, 2026

Choose a reason for hiding this comment

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

The text says there are "two layers between the controller and raw Kubernetes objects", but the diagram terminates at "Kubernetes API" and shows primitives as the objects (ConfigMap/Deployment/etc). Please align the wording and the diagram target (e.g., end at Kubernetes objects, or change the sentence to refer to the API/server) to avoid confusing readers about what the primitive layer wraps.

Copilot uses AI. Check for mistakes.
```

| Layer | Responsibility |
| ---------------------- | --------------------------------------------------------------------------------------- |
| **Controller** | Determines which components should exist; orchestrates reconciliation at a high level |
| **Component** | Represents one logical feature; reconciles its resources and reports a single condition |
| **Resource Primitive** | Encapsulates desired state and lifecycle behavior for a single Kubernetes object |
> ⚪ What you already have   🔵 OCF component layer   🟢 OCF primitive layer

## Features

Expand Down
Loading