from .schemas import CatalogItem, HubCapabilityManifest, HubResource, Link PUBLIC_HUBS = [ HubResource( slug="core-hub", name="Core Hub", description="Third-generation production interaction framework.", capabilities=[ "hub-registry", "interaction-events", "workplan-coordination", "operator-console", ], links=[Link(rel="self", href="/api/v2/hubs/core-hub")], ) ] PUBLIC_MANIFESTS = [ HubCapabilityManifest( hub_slug="core-hub", capabilities=[ "capability.infotech.core-hub", "api.v2.compatibility", "contract.ir", ], endpoints=[ Link(rel="hubs", href="/api/v2/hubs"), Link(rel="events", href="/api/v2/interaction-events"), Link(rel="widgets", href="/api/v2/widgets"), ], ) ] WIDGET_TYPES = [ CatalogItem(slug="status-summary", name="Status Summary"), CatalogItem(slug="workplan-board", name="Workplan Board"), CatalogItem(slug="event-stream", name="Event Stream"), # Inter-Hub compatibility vocabulary (CORE-WP-0005-T04 prerequisite 1): # the full legacy widget_type_registry so migrated widgets stay # referentially complete and legacy catalog consumers see a superset. CatalogItem(slug="action", name="Action Control", description="Button, link, or trigger widget"), CatalogItem(slug="chart", name="Chart", description="Data visualisation chart widget"), CatalogItem(slug="chat", name="Chat Region", description="Conversational interaction region"), CatalogItem(slug="diff", name="Diff / Review", description="Code diff or change review element"), CatalogItem(slug="form", name="Form", description="Data entry form widget"), CatalogItem(slug="ops-backup-set", name="ops-backup-set"), CatalogItem(slug="ops-cluster", name="ops-cluster"), CatalogItem(slug="ops-endpoint", name="ops-endpoint"), CatalogItem(slug="ops-environment", name="ops-environment"), CatalogItem(slug="ops-host", name="ops-host"), CatalogItem(slug="ops-incident", name="ops-incident"), CatalogItem(slug="ops-migration-wave", name="ops-migration-wave"), CatalogItem(slug="ops-readiness-gate", name="ops-readiness-gate"), CatalogItem(slug="ops-release", name="ops-release"), CatalogItem(slug="ops-risk", name="ops-risk"), CatalogItem(slug="ops-runbook", name="ops-runbook"), CatalogItem(slug="ops-secret-set", name="ops-secret-set"), CatalogItem(slug="ops-service", name="ops-service"), CatalogItem(slug="ops-service-catalog", name="ops-service-catalog"), CatalogItem(slug="panel", name="Status Panel", description="Summary or status information panel"), CatalogItem(slug="recommendation", name="Recommendation", description="AI or system recommendation block"), CatalogItem(slug="table", name="Table", description="Tabular data display widget"), CatalogItem(slug="workflow-step", name="Workflow Step", description="Single step in a multi-step workflow"), ] EVENT_TYPES = [ CatalogItem(slug="interaction.event", name="Interaction Event"), CatalogItem(slug="workplan.progress", name="Workplan Progress"), CatalogItem(slug="evidence.recorded", name="Evidence Recorded"), # Inter-Hub compatibility vocabulary (see WIDGET_TYPES note). CatalogItem(slug="abandoned", name="Abandoned"), CatalogItem(slug="accepted_recommendation", name="Accepted Recommendation"), CatalogItem(slug="blocked_by_policy", name="Blocked by Policy"), CatalogItem(slug="clicked", name="Clicked"), CatalogItem(slug="commented", name="Commented"), CatalogItem(slug="escalated", name="Escalated"), CatalogItem(slug="failed", name="Failed"), CatalogItem(slug="flagged_confusing", name="Flagged Confusing"), CatalogItem(slug="flagged_helpful", name="Flagged Helpful"), CatalogItem(slug="focused", name="Focused"), CatalogItem(slug="ops-backup-verified", name="ops-backup-verified"), CatalogItem(slug="ops-drift-detected", name="ops-drift-detected"), CatalogItem(slug="ops-endpoint-verified", name="ops-endpoint-verified"), CatalogItem(slug="ops-health-checked", name="ops-health-checked"), CatalogItem(slug="ops-inventory-registered", name="ops-inventory-registered"), CatalogItem(slug="ops-inventory-updated", name="ops-inventory-updated"), CatalogItem(slug="ops-migration-gate-failed", name="ops-migration-gate-failed"), CatalogItem(slug="ops-migration-gate-passed", name="ops-migration-gate-passed"), CatalogItem(slug="ops-readiness-gate-updated", name="ops-readiness-gate-updated"), CatalogItem(slug="ops-release-observed", name="ops-release-observed"), CatalogItem(slug="ops-restore-tested", name="ops-restore-tested"), CatalogItem(slug="ops-risk-accepted", name="ops-risk-accepted"), CatalogItem(slug="ops-risk-raised", name="ops-risk-raised"), CatalogItem(slug="ops-runbook-executed", name="ops-runbook-executed"), CatalogItem(slug="ops-service-discovered", name="ops-service-discovered"), CatalogItem(slug="rejected_recommendation", name="Rejected Recommendation"), CatalogItem(slug="retracted", name="Retracted"), CatalogItem(slug="retried", name="Retried"), CatalogItem(slug="submitted", name="Submitted"), CatalogItem(slug="viewed", name="Viewed"), ] ANNOTATION_CATEGORIES = [ CatalogItem(slug="operator-note", name="Operator Note"), CatalogItem(slug="compatibility-delta", name="Compatibility Delta"), CatalogItem(slug="migration-evidence", name="Migration Evidence"), ] POLICY_SCOPES = [ CatalogItem(slug="public-read", name="Public Read"), CatalogItem(slug="hub-write", name="Hub Write"), CatalogItem(slug="operator-admin", name="Operator Admin"), ]