Documentation
¶
Overview ¶
Package registries is the ops-registry ingestion adapter: it parses well-known ops registry files — `domains.json` (Sneat-ops shape) and curated `ecosystem*.yaml` maps — into domain/product entities and `declared` facts.
Feature: cli/studio/index (REQ: adapter-registries)
Emitted predicates:
- serves-status — a domain's observed HTTP status from domains.json (the `/` probe when present, else the first probed path)
- fronts — domain → product, from a curated ecosystem map (THE canonical source); when a domain appears only in domains.json, a best-effort fallback emits domain → Cloudflare worker name instead
- aliased-as — product → brand name
- implemented-by — product → repo name
- member-of — product → vertical
Registry files are discovered at the repo root and under data/ (domains.json, ecosystem*.yaml), plus any per-repo `registries:` paths configured in studio.yaml. Both parsers read a tolerant subset of the real shapes: unknown keys are ignored; a malformed file becomes a warning and skips only that file (REQ: partial-tolerance).
Domains and products are GLOBAL coordinates, so subjects and objects are emitted without the `#` repo-relative marker — the pipeline's repo-slug prefixing never applies to them.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Adapter ¶
type Adapter struct {
// contains filtered or unexported fields
}
Adapter is the ops-registry ingestion adapter.
func New ¶
New returns the adapter. extra is the per-repo configured registry file map (workspace.Workspace.ResolveRegistries); nil is fine.