Package ai.pipestream.module.pipelineprobe.pipelinecrawl
package ai.pipestream.module.pipelineprobe.pipelinecrawl
-
ClassDescriptionResolves the test account for a
RunPipelineCrawlrun.Tracks thecrawl_ids of pipeline-crawl runs that currently have an open observation stream (an in-flightOrchestrationDriverrun).Ninja cleanup for pipeline-crawl runs: by default a run deletes every resource it provisioned, so an hourly health-check e2e leaves the platform exactly as it found it.Everything one run needs torn down.Creates a datasource for aRunPipelineCrawlrun and returns its id + api key directly.Credentials for a freshly-created datasource.Builds the chunker module'scustom_configfor a pipeline-crawl run.Idempotent registration of the chunker / embedder / VectorSet fixtures the chunker→embedder→sink Pipeline tab shape needs before its IndexPlan can provision KNN fields.Wraps the gRPC response observer with the boilerplate common to every progress event: serialization on the observer, Timestamp build, pretty step name lookup.Binds a datasource to an active graph at its entry node, returning the datasource-instance id directly.Bounded retry wrapper around a blocking gRPC stub call.Retry budget for a single op.Polls repository-service's indexing ledger for per-crawl receipt progress.Receipt counts for one crawl, partitioned the way the run report wants them.Drives the JDBC source for aRunPipelineCrawlrun: Create the crawl definition via gRPC.Result ofJdbcCrawlManager.setupAndTrigger(String, String, String, JdbcSourceConfig): the connector's triggerId (also thecrawl_idon every dispatched PipeStream) and the crawlName the connector now has registered.Subscribes to the JDBC connector'sstreamCrawlStatusserver-streaming RPC and hydrates aRunLedgerfrom the per-event payload.The active subscription.Polls opensearch-manager for per-crawl indexed-doc counts across the whole index family (base +--chunk--*+--vs--*).One tick's view of the crawl's index family.The actual pipeline-crawl orchestration body (preferred harness path — blocking gRPC, no Mutiny).Hard wall-clock deadline exceeded.Wait loop interrupted (sidecar shutdown, etc).The OS-drain phase found docs the platform terminally failed to index.Dispatch-stream subscription terminated with a real failure: either the connector emitted a malformed event our handler refused to accept, or the gRPC stream errored with a non-CANCELLED status.Renders a finalPipeDocinto a readableStructfor the UI's single-doc output panel.gRPC entry point forRunPipelineCrawl.REST/SSE bridge from the FE's Pipeline tab to the gRPCPipelineCrawlerImpl.FE-facing payload.JDBC source payload.S3 source payload.SINGLE_DOC source payload.Live observation feed for the Pipeline-tab panels.Streaming HTTP client to connector-intake's raw upload endpoint (POST /uploads/raw) — the S3-style path that streams a document of any length straight to:intake/S3 without ever buffering it whole.Single source of truth for one pipeline-crawl run's progress.Drops a run's per-graph redis streams once the pipeline-crawl finishes.Owns the lifetime of pipeline-crawl runs INDEPENDENTLY of any transport connection.One run: its thread, journal, and subscribers.Summary row for one run.Run state for the runs listing.Drives the S3 source for aRunPipelineCrawlrun — the analogue ofJdbcCrawlManagerfor buckets.Result ofS3CrawlManager.hydrateAndTrigger(String, String, String, S3SourceConfig): the connector's request id (the crawl's idempotency key) and how many docs were uploaded during hydration (0 when hydration was skipped).Subscribes to the s3-connector'sStreamCrawlStatusfor one crawl and mirrors its state into aS3DispatchSubscriber.S3DispatchStatethe orchestrator's wait loop reads each tick — the S3 counterpart ofJdbcDispatchSubscriber, but count-based: the connector reports how many objects it dispatched (and, at COMPLETED, the final total) rather than per-doc ids.Live mirror of one crawl's connector-side state.Resolves the set of documents to upload into S3 before an S3 pipeline-crawl run, whenhydrate_sample_datais set.One document to upload: its object key (path within the corpus), bytes, mime type.Reads in-process tap counters and rich-observation snapshots for the orchestrator's poll loop.Drives the SINGLE_DOC source for aRunPipelineCrawlrun.Result ofSingleDocDispatcher.uploadAndDispatch(String, String, String, SingleDocSourceConfig, String): thedoc_idthe upload produced.One stage's receive-side view in aRunLedger: which doc ids landed at this stage's tap, and how many we expect.Captures the most recentPipeDocthat reached the terminal sidecar node, keyed by account.