Documentation
¶
Overview ¶
Package tasks mounts the Hanzo Tasks HTTP + UI surface natively onto the unified cloud binary per HIP-0106 — the follow-up named in cloud's durable.go ("consolidating that surface into cloud"). Tasks is the durable workflow/activity engine (event-sourced, exactly-once, crash-recovering) previously fronted by a standalone tasksd + cluster Service.
ONE ENGINE. cloud already embeds the single in-process tasks engine in durable.go (wireDurableIngest → cloud.EmbeddedTasks), shared by ai's durable ingest. This subsystem does NOT Embed a second engine; it mounts that ONE engine's HTTP handlers on the shared zip mux, so the Tasks product (console/ studio) reads the SAME durable state as ai ingest — one engine, one binary, one way. The engine is created after MountAll, so the surface resolves it LAZILY per request (503 until it is live).
Surface (all under /v1/tasks/*, plus the embedded React UI at /tasks/*):
/v1/tasks/health generic liveness (cloud's per-subsystem contract) /v1/tasks/settings capability flags (open bootstrap) /v1/tasks/cluster[/health] cluster status (open probes) /v1/tasks/namespaces|nexus|... engine JSON API (identity-gated) /v1/tasks/mcp MCP tool surface (identity-gated) /v1/tasks/events SSE realtime stream (identity-gated) /tasks/* embedded React UI (console.hanzo.ai/tasks)
Identity: cloud's gateway validates the IAM JWT and mints X-Org-Id / X-User-Id (HIP-0026); clients/principal treats a credential-minted X-User-Id as the ONE trust signal. gate refuses data requests lacking it (403, never the unscoped store) and threads the validated org into the engine via tasks/pkg/auth.WithIdentity, so per-(org,ns) shard scoping applies.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package ui embeds the built Hanzo Tasks SPA (@hanzo/tasks, the admin-tasks app in hanzoai/admin, Vite + hanzogui) directly into the cloud binary and serves it at /tasks/* (console.hanzo.ai/tasks + tasks.hanzo.ai/tasks).
|
Package ui embeds the built Hanzo Tasks SPA (@hanzo/tasks, the admin-tasks app in hanzoai/admin, Vite + hanzogui) directly into the cloud binary and serves it at /tasks/* (console.hanzo.ai/tasks + tasks.hanzo.ai/tasks). |