protocol_transport
The PGC transport boundary engine — a domain-neutral, protocol-neutral governed boundary between external interaction protocols (HTTP, RPC, CLI) and a PGC execution universe.
It knows how to transport. It declares nothing about what is transported: every route, operation, and workflow binding arrives as configuration the engine is pointed at, never hardcoded. The domain/platform declares what may be transported.
Semantic authority:
TRANSPORT_STANDARD_V0.md(Phase-1 frozen). Read it first. For working in this repo, seeCLAUDE.md.
The invariant
Many external protocols may bind to one Operation Identity; one Operation Identity resolves to one governed PGC invocation contract; the external protocol is replaceable, while the governed interaction remains stable.
HTTP / RPC / CLI
│ (external protocol)
▼
Protocol Adapter ─ translates wire ↔ Canonical Transport Request/Response (owns no domain meaning)
▼
Operation Identity ─ stable public name (e.g. collatz.compute); NEVER a workflow id
▼
TI → handler → TE ─ ingress contract → invocation → egress classification
▼
Canonical Response ─ protocol-neutral { outcome, result_class, result, evidence, errors }
▼
Response Projection ─ adapter maps Result Class → HTTP status / RPC error / CLI exit
TI/TE and the workflows they bind to are domain-governed and live outside this repo
(in the platform/domain surface). This repo is only the engine.
Layout
| Path | Role |
|---|---|
contracts/ |
Canonical, protocol-neutral interop objects — TRANSPORT_REQUEST_V0, TRANSPORT_RESPONSE_V0 |
pgc_transport/request.py |
The Canonical Transport Request every adapter builds. No protocol in it. |
pgc_transport/resolver/ |
The generic resolution engine: operation → TI → handler → TE → Canonical Response. Zero domain knowledge. |
pgc_transport/adapters/http/ |
HTTP mechanics: static mounts, the External Protocol Binding table (data), Response Projection |
pgc_transport/adapters/cli/ |
The pgc_transport command: one request from the command line, and the HTTP adapter's launcher |
TRANSPORT_STANDARD_V0.md |
The frozen semantic model |
run_http.sh |
Domain-neutral launcher (env-provisioned; names no workload) |
The acid test
The engine holds no domain knowledge. Grep pgc_transport/ for any workload
or field name (collatz, number, steps, a route literal) and you find nothing. Everything
domain-specific is data the engine is pointed at:
- operations (
TI/TEdeclarations) viaPGC_OPERATIONS_ROOTS - routes → operations via the External Protocol Binding JSON (
PGC_HTTP_BINDINGS) - static content via
PGC_STATIC_MOUNTS
Adding an operation is additive — a new TI/TE pair plus a binding line — with no engine
change.
Running
run_http.sh is generic and requires the environment to point it at roots. A concrete
composition (the platform reference surface) lives at
conformance_workloads/workloads/collatz/client/serve.sh, which supplies every PGC_* variable and execs this
launcher:
./conformance_workloads/workloads/collatz/client/serve.sh # serves the reference surface on :8000
Installed as pgc-transport, the same boundary is the pgc_transport command. It is pointed at a
snapshot and an instance root, like the HTTP adapter:
export PGC_SNAPSHOT_ROOT=snapshot PGC_DATA_ROOT=data
pgc_transport call collatz.compute '{"number": 27}' # prints the Canonical Transport Response
pgc_transport http # serves the HTTP adapter, as run_http.sh does
call exits with the adapter's projection of the Result Class: 0 SUCCESS, 1 VIOLATION, 3
UNAUTHORIZED, 4 NOT_FOUND, 5 OPERATION_NOT_FOUND, 6 EXECUTION_FAILURE. 2 means the
invocation itself was malformed and never reached the boundary.
See CLAUDE.md for the full configuration surface and architectural rules.
Layer position
external world → transport (adapter → resolver) → runtime (executes) → transport (TE → adapter) → external world
The engine's only cross-repo dependency is the runtime execution interface
(runtime.api.invoke_workflow) — it never imports the compiler, protocol, or any domain.
Metadata
Release files for pgc-transport 6.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pgc_transport-6.0.0.tar.gz | 19.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pgc_transport-6.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.0 kB
Release files / pgc_transport-6.0.0.tar.gz
| Download URL | pgc_transport-6.0.0.tar.gz |
|---|---|
| Size | 19.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34ed986a1d4076d52fc6c14d8277eef6724b69c82ce596e3b6608f77d5ef79d8
|
|
BLAKE2b-256 checksum How to use checksums |
c35b8f05b2b0b0dd6668e3ebd1ac4b05ac186541080eede95a5a536339fc8300
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.10
|
Release files / pgc_transport-6.0.0-py3-none-any.whl
| Download URL | pgc_transport-6.0.0-py3-none-any.whl |
|---|---|
| Size | 22.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fd409cf345cc4aa3257df3dd019deb2ffd1b26481e737d7f630f59279e74e8a2
|
|
BLAKE2b-256 checksum How to use checksums |
79f2076da6c2d80ac3a3261f18e9a365e9de5de5441c59c69d78e89af62bc435
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.10
|
Security for pgc-transport 6.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.