Skip to main content

HTML pipeline report renderer for Cogniflow

Project description

cf-pipeline-report

Minimal HTML report renderer for Cogniflow RDF pipeline manifests.

Published distribution name:

pip install cf-pipeline-report

Status: early scaffolding. The renderer outputs a static HTML shell that uses Observable Runtime (observablehq) to fetch a JSON payload and render a live pipeline view. The payload can be served by a small API so the report stays decoupled from the running pipeline.

Quick start (static JSON payload):

cf pipeline report-render sandcastle/cf_pipeline/cf_pipeline_engine/examples/opcua_fifo_avg_to_duckdb_parquet_triggered.nq
python -m http.server --directory sandcastle/cf_pipeline/cf_pipeline_engine/examples 8000

The report package accepts RDF manifests in Turtle, structured JSON, and N-Quads formats. Repository examples use N-Quads.

Live API (DuckDB-backed):

cf pipeline report sandcastle/cf_pipeline/cf_pipeline_engine/examples/opcua_fifo_avg_to_duckdb_parquet_triggered.nq --duckdb path/to/pipeline.duckdb

Then open http://127.0.0.1:8765/ in the browser.

Multiple pipelines (directory of manifests):

cf pipeline report sandcastle/cf_pipeline/cf_pipeline_engine/examples --duckdb-dir path/to/duckdb

The server will expose one report per pipeline and look for .ttl, .turtle, .json, .nq, and .nquads manifests named <pipeline_id>.duckdb in the provided directory (or nested under <pipeline_id>/<pipeline_id>.duckdb).

Live tables/plots read from the DuckDB view pipeline_data created by the Parquet archive sink. Ensure the pipeline writes to DuckDB before opening the report, or the live sections will show empty data.

If no --duckdb/--duckdb-dir is provided, the server will try to resolve the DuckDB file from the manifest by reading pipelineId and baseDir parameters on the ParquetArchiveSinkStep. In this repo the recommended default is sandcastle/data_hive/<pipelineId>/<pipelineId>.duckdb.

Publishing

cf_pipeline_report is published with the dedicated Windows workflow:

  • Workflow: .github/workflows/cf_pipeline_report_windows_publish.yml
  • Package directory: sandcastle/cf_pipeline/cf_pipeline_report
  • PyPI tag: cf-pipeline-report-v<version>
  • TestPyPI tag: cf-pipeline-report-v<version>-test

Local preflight:

powershell -ExecutionPolicy Bypass -File scripts/mimic_windows_python_publish_workflow.ps1 `
  -WorkflowFile .github/workflows/cf_pipeline_report_windows_publish.yml `
  -PackageDir sandcastle/cf_pipeline/cf_pipeline_report `
  -PythonExe py `
  -PythonVersion 3.14

Queue a dry-run dispatch:

powershell -ExecutionPolicy Bypass -File scripts/queue_windows_python_publish_workflow.ps1 `
  -WorkflowFile .github/workflows/cf_pipeline_report_windows_publish.yml `
  -PackageDir sandcastle/cf_pipeline/cf_pipeline_report `
  -PublishTarget testpypi `
  -Ref main `
  -RequireLocalPass `
  -DryRun

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cf_pipeline_report-0.1.3.tar.gz (25.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cf_pipeline_report-0.1.3-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file cf_pipeline_report-0.1.3.tar.gz.

File metadata

  • Download URL: cf_pipeline_report-0.1.3.tar.gz
  • Upload date:
  • Size: 25.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for cf_pipeline_report-0.1.3.tar.gz
Algorithm Hash digest
SHA256 666b4d33c5ff8e73b9ec8c42c1a77ccf0e2ff6f7ffcf892935cc1be80d3c0821
MD5 14df8b62c217a338e763d0019daa130c
BLAKE2b-256 91434fc1bac6781adb9ab0e2313bd3090d8570ec7a29f511ac8ea87470492145

See more details on using hashes here.

File details

Details for the file cf_pipeline_report-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for cf_pipeline_report-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 90fb89e79faa761e6513df596a2cc0c39ee3ead6ee6a3095ab971cf7e8b05fb7
MD5 6979f63ce4fafc20efcac970b6220b08
BLAKE2b-256 46100b006e030c13702ca65148c08343b7aafe7b56b2c07523dc5f55d9b74e63

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page