greentic-x
greentic-x is the bootstrap repository for the Greentic-X layer: shared runtime crates, reference contracts, reference ops, examples, and architecture/spec documentation that sit above the minimal Greentic core. This repository is intentionally starting small, but its structure is now aligned with the planned multi-crate workspace so future PRs can add real implementation without restructuring the repo again.
Greentic core should stay narrow and foundational. This repository is where the broader object model, runtime behavior, reusable operations, example applications, and supporting reference material can grow.
What Belongs Here
- Shared Rust crates for Greentic-X types, events, contracts, runtime, flow execution, and ops.
- Reference contract artifacts under
contracts/. - Reference operation artifacts under
ops/. - Wizard-backed source packs under
packs/. - Formal GX specs under
specs/. - Minimal reusable GX catalog entries under
catalog/. - Example applications and end-to-end demos under
examples/. - Flow/profile-driven reference packages under
examples/. - Architecture and specification notes under
docs/.
What Does Not Belong In Greentic Core
- Domain-rich contract libraries and reference resources.
- Runtime orchestration and contract enforcement logic.
- Reusable operational workflows and reference ops.
- Example apps, demos, and extended documentation for the Greentic-X model.
Repository Layout
crates/greentic-x-types: shared type vocabulary for identifiers, revisions, provenance, schemas, and mutation requests.crates/greentic-x-events: structured event envelopes and lifecycle payloads.crates/greentic-x-contracts: contract manifest and validation models.crates/greentic-x-runtime: in-memory-capable runtime core for contracts, resources, typed links, resolvers, and op invocation.crates/greentic-x-flow: flow execution, evidence capture, and neutral view rendering built on top of the runtime.crates/greentic-x-ops: op manifest and validation models.crates/gx: CLI tooling for GX scaffolding, validation, simulation, doctor checks, and catalog inspection.contracts/: reference contract directories forcase,evidence,outcome, andplaybook.ops/: reference op directories forapproval-basic,playbook-select, andrca-basic.examples/: runnable example applications forsimple-case-app,simple-playbook-app, andend-to-end-demo.examples/: runnable Rust smoke apps plus flow/profile-driven reference packages such astop-contributors-genericandroot-cause-split-join-generic.packs/: wizard-backed source packs for the current contract, ops, and runtime-capability references.specs/: formal GX spec packages for resources, resolver results, operation descriptors, flow runs, evidence, views, and the observability profile.catalog/: minimal reusable GX contract/spec, resolver, op, view, and flow-template catalog entries.docs/: architecture, model, governance, and examples notes.
Current Status
- Workspace structure: implemented.
- Shared types, events, contracts, runtime, flow execution, and ops: implemented first-cut models.
- Example apps: runnable deterministic demos using the local reference artifacts.
- CI and releases: wired through
ci/local_check.shand GitHub Actions. - Pack scaffolding: wizard-backed source packs exist for contracts, ops, and runtime capability references.
- Specs and catalog: initial GX standards layer now exists under
specs/andcatalog/. - Tooling:
gxnow scaffolds contract/op/flow/resolver/view packages, validates contracts/ops/flows/resolvers/views, simulates flows, runs doctor checks, and lists catalog entries. - Catalog tooling:
gxnow also scaffolds solution catalog repos, builds canonicalcatalog.jsonindexes, validates them, and letsgx wizardmerge local or OCI-backed solution catalogs through repeated--catalogflags. - Profile/examples:
gx.observability.playbook.v1now compiles into normal GX flows, and four generic reference example packages are checked in underexamples/. - Remaining work: policy/migration execution, richer pack contents, designer UX, and publish decisions.
Non-Goals For This Bootstrap
- No production storage backend or operator integration yet.
- No production-ready contract/op/runtime provider components yet; the current
packs/entries are wizard-backed source packs with placeholder generated components. - No detailed governance machinery in code yet.
CI and Releases
Run local checks with:
The script runs formatting, clippy, tests, build, docs, and crates.io dry-run packaging checks for publishable workspace crates.
It also validates the checked-in GX specs and catalog when specs/ and catalog/ are present.
It also runs cargo run -p greentic-x -- doctor . so the repo-level GX tooling checks stay green.
When greentic-pack is available locally, it also builds and inspects the
source packs under packs/. GitHub Actions now installs greentic-pack via
cargo-binstall, using a cached cargo-binstall binary and a cached
greentic-pack binary where available.
Packs
packs/greentic-x-contracts-reference: source pack that mirrors the repo reference contracts intoassets/contracts/.packs/greentic-x-ops-reference: source pack that mirrors the repo reference ops intoassets/ops/.packs/greentic-x-runtime-capability-reference: wizard-backed runtime capability reference scaffold with an example capability offer.
Regenerate or update a scaffold with:
Build a source pack into a .gtpack with:
GitHub Actions:
.github/workflows/ci.ymlruns lint, test, and package validation on pull requests and pushes..github/workflows/publish.ymlverifies the version tag and publishes any publishable crates before creating a GitHub release.
Release flow:
- Bump the shared workspace version in
Cargo.toml. - Run
bash ci/local_check.sh. - Create and push a matching tag such as
v0.4.0. - Push the tag to trigger
.github/workflows/publish.yml.
Required GitHub secret:
CARGO_REGISTRY_TOKEN
Docs
docs/architecture.mddocs/contracts.mddocs/specs-overview.mddocs/core-catalog.mddocs/authoring-profile-observability.mddocs/ops.mddocs/runtime.mddocs/runtime-overview.mddocs/runtime-boundary.mddocs/flow-executor.mddocs/parallelism-and-join-semantics.mddocs/evidence-and-view-separation.mddocs/tooling-overview.mddocs/catalog-repos.mddocs/how-to-build-a-downstream-solution.mddocs/simulation-workflow.mddocs/reference-examples.mddocs/observability-profile-vs-raw-flows.mddocs/why-six-primitives.mddocs/governance.mddocs/examples.md
License
MIT