-
Notifications
You must be signed in to change notification settings - Fork 0
chore(docs): architecture diagram #140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,77 @@ | ||||||
| # Architecture | ||||||
|
|
||||||
| ```mermaid | ||||||
| graph TB | ||||||
| subgraph Client["Client Layer"] | ||||||
|
Comment on lines
+3
to
+5
|
||||||
| CLI["mate CLI\n(Command-line Interface)"] | ||||||
| end | ||||||
|
|
||||||
| subgraph API["HTTP API Layer (Axum)"] | ||||||
| REST["REST Endpoints (:6283)"] | ||||||
| JR["Job Routes\nPOST /job\nGET /job/:id\nGET /jobs"] | ||||||
| TR["Task Routes\nPOST /task/load\nGET /tasks"] | ||||||
|
||||||
| TR["Task Routes\nPOST /task/load\nGET /tasks"] | |
| TR["Task Routes\nPOST /api/v0/tasks/{namespace}/{name}/{version}\nGET /api/v0/tasks"] |
Copilot
AI
Mar 9, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The API routes shown here don’t match the current Axum routes. The server nests under /api/v0 and exposes jobs at POST /api/v0/jobs + GET /api/v0/jobs (with ?id= for lookup), not POST /job / GET /job/:id / GET /jobs. Updating the diagram to the real paths will prevent clients from implementing against incorrect endpoints.
Copilot
AI
Mar 9, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The WASM runtime box labels a Module (compiled .wasm), but the executor currently uses Wasmtime’s component model (wasmtime::component::Component) rather than wasmtime::Module. Consider renaming this node to “Component” (and adjusting any related labels) so the diagram matches the actual runtime objects being instantiated.
Copilot
AI
Mar 9, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The persistence section doesn’t reflect the current implementation. Storage uses SQLx with SQLite (not PostgreSQL), and the only migration creates a jobs table with columns like name, task, scheduled_at, attempts, etc. (no tasks table / wasm_bytes, and not task_id). Either update this to SQLite + the actual schema, or reword it as an aspirational/roadmap architecture to avoid misleading readers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This page won’t be included in the mdBook navigation unless it’s added to
docs/src/SUMMARY.md. Consider adding an entry (e.g., “Architecture”) so readers can discover the diagram in the published docs.