corvix.pipeline.providers ========================= .. py:module:: corvix.pipeline.providers .. autoapi-nested-parse:: Built-in pipeline providers (field completion and context enrichment). Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/corvix/pipeline/providers/github_latest_comment/index /autoapi/corvix/pipeline/providers/github_pr_state/index /autoapi/corvix/pipeline/providers/github_thread_subject/index /autoapi/corvix/pipeline/providers/github_web_url/index Classes ------- .. autoapisummary:: corvix.pipeline.providers.GitHubLatestCommentProvider corvix.pipeline.providers.GitHubPRStateProvider corvix.pipeline.providers.GitHubThreadSubjectProvider corvix.pipeline.providers.GitHubWebUrlProvider Package Contents ---------------- .. py:class:: GitHubLatestCommentProvider Enriches comment notifications with the latest comment metadata. .. py:attribute:: timeout_seconds :type: float :value: 10.0 .. py:attribute:: name :type: str :value: 'github.latest_comment' .. py:method:: enrich(notification: corvix.domain.Notification, client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext) -> dict[str, object] Return latest comment metadata under the provider namespace. .. py:class:: GitHubPRStateProvider Enriches pull-request notifications with state metadata. .. py:attribute:: timeout_seconds :type: float :value: 10.0 .. py:attribute:: name :type: str :value: 'github.pr_state' .. py:method:: enrich(notification: corvix.domain.Notification, client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext) -> dict[str, object] Return pull-request state metadata under the provider namespace. .. py:class:: GitHubThreadSubjectProvider Backfills subject_url from a notification thread payload. .. py:attribute:: timeout_seconds :type: float :value: 10.0 .. py:attribute:: name :type: str :value: 'github.thread_subject' .. py:method:: hydrate(notification: corvix.domain.Notification, client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext) -> corvix.domain.Notification .. py:class:: GitHubWebUrlProvider Hydrates notification.web_url with direct and API-based mappings. .. py:attribute:: timeout_seconds :type: float :value: 10.0 .. py:attribute:: name :type: str :value: 'github.web_url' .. py:method:: hydrate(notification: corvix.domain.Notification, client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext) -> corvix.domain.Notification .. py:method:: _resolve_check_suite(client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext, notification: corvix.domain.Notification, repo_base: str) -> str | None .. py:method:: _resolve_check_suite_from_title(client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext, notification: corvix.domain.Notification, repo_base: str) -> str | None .. py:method:: _resolve_check_suite_from_subject_url(client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext, subject_url: str, repository: str) -> str | None .. py:method:: _resolve_release(client: corvix.pipeline.base.JsonFetchClient, ctx: corvix.pipeline.provider.PipelineContext, subject_url: str) -> str | None