diff --git a/catalog/capability-types.yaml b/catalog/capability-types.yaml index 280f233..905ad98 100644 --- a/catalog/capability-types.yaml +++ b/catalog/capability-types.yaml @@ -119,3 +119,14 @@ spec: - http-api - event-stream tags: [coordination, state-hub, planning] + + - id: ecosystem-registry + name: Ecosystem registry + lifecycle: active + description: Registers repositories and exposes graph, inventory, and visualization projections over the ecosystem model. + default_criticality: high + default_data_classification: internal + expected_interface_types: + - http-api + - web-ui + tags: [registry, discovery, graph, visualization] diff --git a/catalog/interface-types.yaml b/catalog/interface-types.yaml index a446d50..bcf916a 100644 --- a/catalog/interface-types.yaml +++ b/catalog/interface-types.yaml @@ -17,6 +17,14 @@ spec: typical_auth_methods: [none, oidc, jwt, mtls, api_key] versioning: path, header, media-type, or documented semantic version. + - id: web-ui + name: Web UI + lifecycle: active + description: Browser-based user interface for humans and agents operating through a visual surface. + category: ui + typical_auth_methods: [none, oidc, jwt, mtls, api_key] + versioning: URL path, static asset version, and documented user-facing workflow compatibility. + - id: oidc-discovery name: OIDC discovery lifecycle: active diff --git a/docs/type-catalog.md b/docs/type-catalog.md index 4f3c788..859f985 100644 --- a/docs/type-catalog.md +++ b/docs/type-catalog.md @@ -28,12 +28,14 @@ Machine-readable catalog files: | `audit-event-sink` | planned | high | confidential | `event-stream`, `http-api` | | `scope-generation` | active | medium | internal | `cli`, `http-api` | | `coordination-read-model` | active | high | internal | `http-api`, `event-stream` | +| `ecosystem-registry` | active | high | internal | `http-api`, `web-ui` | ## Interface Types | Type | Lifecycle | Category | Typical Auth | |------|-----------|----------|--------------| | `http-api` | active | api | `none`, `oidc`, `jwt`, `mtls`, `api_key` | +| `web-ui` | active | ui | `none`, `oidc`, `jwt`, `mtls`, `api_key` | | `oidc-discovery` | active | identity | `none` | | `kubernetes-secret` | active | kubernetes | `kubernetes_service_account` | | `kubernetes-crd` | active | kubernetes | `kubernetes_service_account` | diff --git a/fabric/capabilities/railiance-fabric-ecosystem-registry.yaml b/fabric/capabilities/railiance-fabric-ecosystem-registry.yaml new file mode 100644 index 0000000..7cb1dce --- /dev/null +++ b/fabric/capabilities/railiance-fabric-ecosystem-registry.yaml @@ -0,0 +1,24 @@ +apiVersion: railiance.fabric/v1alpha1 +kind: CapabilityDeclaration +metadata: + id: railiance-fabric.registry.ecosystem-registry + name: Railiance ecosystem registry + owner: railiance-fabric + repo: railiance-fabric + domain: railiance + source_links: + - label: Registry store + path: railiance_fabric/registry.py + - label: Registry API docs + path: docs/registry-api.md +spec: + lifecycle: active + environments: [dev] + description: Registers repositories, ingests Fabric graph snapshots and library inventory, and exposes registry projections for discovery, State Hub export, xRegistry, and the interactive Fabric map. + capability_type: ecosystem-registry + service_id: railiance-fabric.registry + interface_ids: + - railiance-fabric.registry.http-api + - railiance-fabric.registry.graph-explorer-ui + criticality: high + data_classification: internal diff --git a/fabric/interfaces/railiance-fabric-registry-graph-explorer-ui.yaml b/fabric/interfaces/railiance-fabric-registry-graph-explorer-ui.yaml new file mode 100644 index 0000000..76130e5 --- /dev/null +++ b/fabric/interfaces/railiance-fabric-registry-graph-explorer-ui.yaml @@ -0,0 +1,28 @@ +apiVersion: railiance.fabric/v1alpha1 +kind: InterfaceDeclaration +metadata: + id: railiance-fabric.registry.graph-explorer-ui + name: Railiance Fabric Graph Explorer UI + owner: railiance-fabric + repo: railiance-fabric + domain: railiance + source_links: + - label: UI shell + path: railiance_fabric/graph_explorer_ui.py + - label: Graph explorer operations + path: docs/graph-explorer-operations.md +spec: + lifecycle: active + environments: [dev] + description: Browser UI for exploring the local Fabric registry graph, onboarding gaps, dependencies, interfaces, saved local views, and shareable graph state. + interface_type: web-ui + version: v1alpha1 + service_id: railiance-fabric.registry + capability_ids: + - railiance-fabric.registry.ecosystem-registry + endpoint: + url: http://127.0.0.1:8765/ui/graph-explorer + notes: Local workstation UI when the registry service is running. + auth: + method: none + data_classification: internal diff --git a/fabric/interfaces/railiance-fabric-registry-http-api.yaml b/fabric/interfaces/railiance-fabric-registry-http-api.yaml new file mode 100644 index 0000000..6e38b20 --- /dev/null +++ b/fabric/interfaces/railiance-fabric-registry-http-api.yaml @@ -0,0 +1,28 @@ +apiVersion: railiance.fabric/v1alpha1 +kind: InterfaceDeclaration +metadata: + id: railiance-fabric.registry.http-api + name: Railiance Fabric Registry HTTP API + owner: railiance-fabric + repo: railiance-fabric + domain: railiance + source_links: + - label: HTTP routes + path: railiance_fabric/server.py + - label: API docs + path: docs/registry-api.md +spec: + lifecycle: active + environments: [dev] + description: Local HTTP API for repository registration, graph snapshot ingestion, graph queries, inventory views, State Hub export, Backstage projection, xRegistry projection, and graph explorer payloads. + interface_type: http-api + version: v1alpha1 + service_id: railiance-fabric.registry + capability_ids: + - railiance-fabric.registry.ecosystem-registry + endpoint: + url: http://127.0.0.1:8765 + notes: Local workstation endpoint when the registry service is running. + auth: + method: none + data_classification: internal diff --git a/fabric/services/railiance-fabric-registry.yaml b/fabric/services/railiance-fabric-registry.yaml new file mode 100644 index 0000000..209fbef --- /dev/null +++ b/fabric/services/railiance-fabric-registry.yaml @@ -0,0 +1,23 @@ +apiVersion: railiance.fabric/v1alpha1 +kind: ServiceDeclaration +metadata: + id: railiance-fabric.registry + name: Railiance Fabric Registry + owner: railiance-fabric + repo: railiance-fabric + domain: railiance + source_links: + - label: Registry server implementation + path: railiance_fabric/server.py + - label: Operations guide + path: docs/graph-explorer-operations.md +spec: + lifecycle: active + environments: [dev] + description: Local ecosystem registry and graph explorer service for registered Railiance repositories, Fabric graph snapshots, inventory, and map-oriented exports. + service_type: registry-service + provides_capabilities: + - railiance-fabric.registry.ecosystem-registry + exposes_interfaces: + - railiance-fabric.registry.http-api + - railiance-fabric.registry.graph-explorer-ui