Polydiagram — Business Flows as Governed Architecture Artifacts
Open specification, v0.1 draft.
Polydiagram makes declared business flows first-class artifacts in an
architecture-as-code system and binds them to runtime telemetry by
construction. A flow is a named, versioned, owner-attributed path through a
typed component graph, carrying SLOs and criticality. Its identity
(flow.id, flow.step) propagates as trace context, so:
- Coverage is checkable — a declared step with no attributable telemetry is a named observability gap, found in CI/continuous evaluation, not mid-incident.
- Drift is checkable both ways — observed-but-undeclared paths and declared-but-silent flows are conformance findings (reflexion-model triad).
- Layers are governed files, not display state — a base Topology owns node/edge identity and layout; network, authn, and authz overlays annotate those same identities from separately owned files (include semantics with shallow-merge fragments). Click a layer to isolate: identical layout, facet-specific annotations — mTLS/X.509 and ports on the network view, IAP vs service-account identity on the authn view. Views are versioned render presets. The paper names this artifact the polymorphic diagram: many presentations, one invariant base.
- The diagram becomes the SRE surface — live SLO burn, latency, cost, and nondeterminism level render onto the reviewed architecture canvas, because the diagram, the flows, and the telemetry share identity.
The full argument is in the paper: paper/polymorphic-diagram-preprint.md.
Builds on and extends: Flow-Based Telemetry Coverage: A Method for Measuring and Governing Observability by Business-Flow Consequence — Gray, 2026, DOI 10.5281/zenodo.21415948.
Repository layout
paper/ preprint (CC BY 4.0)
spec/ flow descriptor + layered diagram language (JSON Schema 2020-12)
examples/ worked flow, layered topology (network/authn/authz), fragments, view
tools/ reference validators (the CI gates)
Quickstart
pip install jsonschema pyyaml
python3 tools/validate_flows.py examples/retail-quote.flow.yaml \
--registry examples/registry-stub.yaml
python3 tools/validate_diagram.py --root . \
examples/views/security-review.view.yaml --flows-dir examples
Status
v0.1: flow descriptor schema, layered diagram language (Topology/Layer/View + domain profiles), two validators, binding conventions, worked layered example. Deliberately out of scope (contracts defined, tooling invited): canvas implementation, trace-topology discovery miner, backend-specific coverage evaluators. See paper §8–§9 for scope and limitations.
License
Code and schemas: Apache-2.0 (see LICENSE). Paper (paper/) and
specification prose (spec/*.md): CC BY 4.0.
Citing
See CITATION.cff. A Zenodo DOI is minted per tagged release.
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 polydiagram-0.2.1.tar.gz.
File metadata
- Download URL: polydiagram-0.2.1.tar.gz
- Upload date:
- Size: 23.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e09a85a4976d9288be709a9cb5930a0e77939e1c741cb1c9225e154e10e8d69
|
|
| MD5 |
16ed5ac1122d86d31cd9b1eb352df92e
|
|
| BLAKE2b-256 |
6710ae2501d701b84916c76d79df462ff48cefc27a08c3e25ddfbcc9f2c5c90f
|
Provenance
The following attestation bundles were made for polydiagram-0.2.1.tar.gz:
Publisher:
publish.yml on azimuth-ink/polydiagram
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
polydiagram-0.2.1.tar.gz -
Subject digest:
6e09a85a4976d9288be709a9cb5930a0e77939e1c741cb1c9225e154e10e8d69 - Sigstore transparency entry: 2235842549
- Sigstore integration time:
-
Permalink:
azimuth-ink/polydiagram@82c1b09eb45989fce742a1cd73a6667dfd35f926 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/azimuth-ink
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@82c1b09eb45989fce742a1cd73a6667dfd35f926 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file polydiagram-0.2.1-py3-none-any.whl.
File metadata
- Download URL: polydiagram-0.2.1-py3-none-any.whl
- Upload date:
- Size: 18.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
708fca2c0d0fea4f85c4d1ceece49b296f4b35c74eede799d848b676579c2487
|
|
| MD5 |
0679ea887695e2cd8f16bdc92cf7dfda
|
|
| BLAKE2b-256 |
0f32c05c02391d995e533fa7f4d48733383838027fc37d8e31a97f49b9cc69bd
|
Provenance
The following attestation bundles were made for polydiagram-0.2.1-py3-none-any.whl:
Publisher:
publish.yml on azimuth-ink/polydiagram
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
polydiagram-0.2.1-py3-none-any.whl -
Subject digest:
708fca2c0d0fea4f85c4d1ceece49b296f4b35c74eede799d848b676579c2487 - Sigstore transparency entry: 2235842707
- Sigstore integration time:
-
Permalink:
azimuth-ink/polydiagram@82c1b09eb45989fce742a1cd73a6667dfd35f926 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/azimuth-ink
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@82c1b09eb45989fce742a1cd73a6667dfd35f926 -
Trigger Event:
workflow_dispatch
-
Statement type: