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.13
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cf_pipeline_report-0.1.1.tar.gz.
File metadata
- Download URL: cf_pipeline_report-0.1.1.tar.gz
- Upload date:
- Size: 25.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
768abeaeda2bdb131032e08d272e4779def81360618f90e79a8ebd27db032821
|
|
| MD5 |
3929d6387e87a84d9175b704427b14f9
|
|
| BLAKE2b-256 |
350ea9c2f4417e867a9ca987f0f09b5b0a7a99321d407f633ded228351e86ccf
|
File details
Details for the file cf_pipeline_report-0.1.1-py3-none-any.whl.
File metadata
- Download URL: cf_pipeline_report-0.1.1-py3-none-any.whl
- Upload date:
- Size: 24.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec0467ffa8c972a720d4a2695a4d96999a6caf5343a2d13c367ae80fb8e7e92a
|
|
| MD5 |
aeaf4e9f088855907514c4aaa1519d53
|
|
| BLAKE2b-256 |
bf3ffeccf5ee1cdb4a31120c2f017682d51af0f6c2efc6a1bc7f50f7a2a00c90
|