product

package
v1.801.441 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 4, 2026 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package product is the read-only inventory of the search and vector backends: /v1/search/{indexes,stats} read from Meilisearch and /v1/vector/{collections,stats} from Qdrant, reshaped into the rows the console renders.

The console's Search/Indexes and Vector panels call https://api.hanzo.ai/v1/search/* and /v1/vector/* with a bearer key (HANZO_SEARCH_API_KEY / HANZO_VECTOR_API_KEY). cloud-api is the single edge that owns those paths: this subsystem proxies them to the in-cluster Meilisearch (search.hanzo.svc) and Qdrant (vector.hanzo.svc) services and translates each upstream response into the exact JSON shape the console's tRPC routers decode. No search/vector logic is reimplemented — this is a shape-translating proxy.

Auth: the gateway middleware (order 80) bypasses these paths via AUTH_PUBLIC_PATHS (the bearer is an opaque service key, not a JWT). This subsystem enforces the key itself with a constant-time compare against the configured upstream master key, so the endpoints are never open.

Module boundary: search lives in the Meilisearch service, vectors in Qdrant. This wrapper is glue; it holds no index/collection state.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Mount

func Mount(app cloud.Router, deps cloud.Deps) error

Mount registers the product (search + vector) read surface on app per HIP-0106. Read-only: every panel degrades to an honest empty state in the console when this surface is unreachable, so these handlers prefer returning an empty-but-valid body over a 5xx whenever the upstream hiccups.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL