Help us shape the future of Go! Take the 2026 Go Developer Survey

atlas

package module
v0.21.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2026 License: AGPL-3.0 Imports: 1 Imported by: 0

README

atlas

A durable, high-throughput BPMN 2.x workflow engine in a single Go binary.

Design processes in the browser, run them on an event-sourced engine, watch every token live, and replay any instance step by step — with no database, no message broker, and no runtime dependencies.

CI Latest release Go 1.26

atlas.blumer.cloud

atlas is named after the Titan who bears an immense load without ever letting it drop. That's exactly what it does: it carries process instances, batch after batch, and never drops a token.

Developer preview (0.x). atlas already runs a broad slice of BPMN 2.x durably on a single node, but it is not ready for production use — the pre-1.0 API and on-disk formats are unstable and changing fast. See the changelog for what's in each release and the roadmap for what's next.


Install

Atlas is a single self-contained binary — engine, HTTP API, and the whole web UI in one file. Grab it from the releases, verify it against SHA256SUMS, and run it:

tar -xzf atlas_0.21.0_linux_amd64.tar.gz
./atlas_0.21.0_linux_amd64/atlas serve --data-dir ./atlas-data
# open http://127.0.0.1:8080/ and sign in

That's the whole setup. No SQL schema to migrate, no broker to provision, no sidecar.

A login is required by default. On the first start atlas creates one administrator and logs a generated password once — copy it out of the startup output, or set ATLAS_ADMIN_PASSWORD beforehand to choose your own. To poke around without any of that, --auth=false runs the server open; it says so loudly at startup, and it is for a laptop, not for anything reachable by anyone else.

Installation guide — the step-by-step version: Linux with a systemd unit, Windows Server, macOS, turning on authentication, TLS, backups, upgrades, and the full flag and environment-variable reference. For containers and Kubernetes see Deploying atlas.

Highlights

  • One binary. Engine, REST API, OpenAPI explorer, Modeler, Operations, Tasks app and MCP adapter ship in one file. Pure Go, no CGO, embedded state store.
  • Durable by construction. Every state transition is an append-only event. Nothing becomes visible before it is on disk, and crash recovery is a replay of the log.
  • Compiled, not interpreted. BPMN is compiled once at deploy time into a flat, integer-indexed graph — no XML parsing or string lookups on the hot path.
  • Model in the browser. A full BPMN modeler with a properties panel, problems panel, auto-layout, version history, live collaborative editing, and a token simulation you can play without deploying.
  • See every token. A live view of all running instances on the diagram, plus a step-by-step replay of any single instance with per-step variable snapshots.
  • Human work included. User tasks with real forms, claim/assign, candidate groups, and public start links — a Tasks app, not just an API.
  • Decisions as tables. DMN business rule tasks with an embedded decision-table editor, and every evaluation recorded with its inputs, outputs and rule trace.
  • atlas hub (preview). Find and review signed Process Application Blueprints and their included product catalogues from an operator-trusted registry in the Console. Standalone catalogues, private offers and managed updates are roadmap work, not shipped hub capabilities. See the hub programme.
  • Made for AI agents. atlas mcp exposes 167 Model Context Protocol tools, so an agent can author, deploy, run and inspect processes over the same API you do.

Take the tour

Design it

(The screenshot at the top of this page.) The Modeler is the standard bpmn-js toolkit embedded in the binary (ADR-0011) with a full properties panel (ADR-0025), a versioned validation ("Problems") panel that checks the model against the engine that will actually run it (ADR-0026), server-side auto-layout (ADR-0124), diagram version history (ADR-0031) and live collaborative sessions (ADR-0140). Deploy & run takes a model from the canvas to a running instance in one click, and a browser-side token simulation (ADR-0030) lets you play a model through before it is deployed at all.

Run it, and watch it

The Operations live view puts every instance of a process version on one diagram at once: green marks a live token, dashed marks a path already taken, and the badge on each element counts the tokens sitting there. The panel on the right lists each instance with its variables, and links straight to the waiting task.

Replay any instance, step by step

Because state is a fold over an event log, an instance can be walked one step at a time after the fact (ADR-0046, ADR-0065). Scrub the timeline and the tokens move on the diagram; the Variables tab shows the values as of that step (ADR-0048), and the Decisions tab shows which DMN rules fired. This is the answer to "why did this instance do that?" — not a guess reconstructed from logs, but the recorded facts.

Give people real work

User tasks carry forms built in the browser (ADR-0028), with the modeler's documentation shown to the assignee as the work instruction. Tasks can be claimed, assigned to a person or a candidate group (ADR-0042, ADR-0045), scheduled with a due date and priority (ADR-0091), and started from a public link by someone with no account at all (ADR-0029).

Keep the rules where the business can reach them
The embedded DMN editor showing a decision table with a Unique hit policy and four rules

Business rule tasks evaluate DMN decisions (ADR-0014), authored in an embedded DMN editor (ADR-0062). Grading thresholds, approval limits and routing rules live in a table a domain expert can change — no redeploy of the process, and every evaluation is recorded with its inputs, outputs and the rule that hit (ADR-0066).

Why another workflow engine?

Most BPMN engines spend their time interpreting XML at runtime and writing process state to a SQL database one transaction at a time. Both are throughput killers. atlas takes a different path, borrowed from the design lineage of log-structured, event-sourced systems:

  • Compile, don't interpret. BPMN models are compiled once at deploy time into a flat, integer-indexed execution graph. At runtime there are no string lookups, no XML parsing, no map access on the hot path — just pointer arithmetic over cache-friendly slices.
  • Event sourcing over state mutation. State is never written in place. Every state transition is an append-only event in a write-ahead log. The live state is a materialization of that log, kept in an embedded key-value store.
  • Group commit. Many events are made durable with a single fsync. One fsync per event caps you at a few thousand per second; one fsync per thousand events lifts that ceiling by orders of magnitude.
  • Single writer per partition. Each partition is driven by one goroutine processing commands sequentially — no locks, no mutex contention, cache-friendly state access, and trivially deterministic recovery via log replay. Scale horizontally by adding partitions, not threads.

Numbers, not adjectives: the benchmark harness and its published baseline measure throughput, latency distribution and recovery on a named machine at a named commit — including how much of the durable path is simply disk fsync.

Design at a glance

Command → [Single-writer Processor] → State mutation (in-memory tx) + Events
                                              │
                                    Batched WAL append + one fsync
                                              │
                                    State commit → followup commands → side effects
                                              │
                                    (Recovery: replay events → state)

The three core pillars:

  1. The graph compiler turns hierarchical BPMN XML into immutable, integer-indexed slices — nodes, flows, and scopes — with interned strings and pre-compiled expressions. Expensive once, cheap a million times.
  2. The processor moves tokens through that graph as a deterministic fold over an event log. A single batch loop collects commands, processes them purely in-memory against a transaction, makes the whole batch durable with one fsync, then runs visible side effects.
  3. The data model makes every step a keyed record with a (ValueType, Intent) discriminator. The same applyToState function runs live and during recovery, so the log and the state can never diverge.

What it runs

BPMN 2.x. All four gateway kinds (exclusive, parallel, inclusive, event-based). Embedded, event, transaction, ad-hoc and call-activity subprocesses. Boundary events — timer, message, signal, error, escalation, conditional, compensation — interrupting and non-interrupting. Start events from none, message, timer and signal triggers. Multi-instance (parallel and sequential) and standard-loop activities. Link, escalation and terminate events. Data objects with input/output associations, lanes, collaborations with pools and message flows, and compensation.

Coverage is a checkable claim, not a vibe: the conformance suite registers every execution feature against the recognized workflow control-flow patterns and reports the gaps in COVERAGE.md — currently 31 features and 9 patterns, with none uncovered. Five independent oracles back it, including replay equivalence on every model and an opt-in differential test against a second, unrelated engine.

FEEL everywhere. Gateway conditions, script tasks, timer schedules, multi-instance cardinality and completion conditions, and I/O mappings are compiled at deploy time and evaluated in-engine (ADR-0008, ADR-0015).

Work that leaves the engine. Job workers over the HTTP API, polyglot script tasks (JavaScript, Python, PowerShell) run by shelling out to the interpreter (ADR-0047), a service-task catalog of Worker Types (ADR-0067, ADR-0203) covering REST, mail, SharePoint, BMC Remedy, Jira, S3 object storage, Microsoft Exchange, Google Contacts, CardDAV address books, wikiwikibangbang wikis and web scraping, and an engine-internal encrypted secret vault so credentials never sit in the model (ADR-0069). Service tasks can also be marked mockup (ADR-0120) — the engine simulates the call, with a scripted answer, a random duration and a failure rate — so a process runs end to end before any of its integrations exist.

Built to be driven by an agent

atlas mcp --server http://localhost:8080          # --token, or ATLAS_TOKEN, when the server requires a login

Atlas ships a Model Context Protocol adapter over its own HTTP API (ADR-0016): 167 tools covering projects and drafts, BPMN and DMN deployment, instance lifecycle, task claiming and completion, incident resolution, runtime inspection, the business-architecture registry that says what a process is for, and the self-service shop's product catalogue. An agent can author a process, deploy it, start it, work its user tasks and read back the timeline — through exactly the surface a human uses. The Modeler also carries an in-canvas AI copilot (ADR-0032), and processes can call an agent as a task (ADR-0117).

Running it for real

Backup and restore, including whole-instance snapshots (ADR-0107, ADR-0109) · recovery checkpoints and WAL compaction so a restart doesn't replay from genesis (ADR-0131) · incidents with resolution and retries (ADR-0061, ADR-0135) · Prometheus metrics at /metrics (ADR-0142) · an OpenAPI spec with an embedded API explorer at /api/docs (ADR-0043) · event export to OpenSearch and history retention (ADR-0114, ADR-0115) · personal data that can actually be erased — a declared variable is enciphered under its data subject's own key, so destroying that one key renders every copy unreadable at once, backups included (ADR-0314) · authentication, users and per-project membership (ADR-0044) · and process applications — versioned, deployable units that can be promoted to another server and exported or imported as a source archive; binding one to a git repository is decided but not built yet (ADR-0128, ADR-0134).

Try the examples

examples/ holds runnable models that double as showcases and as deterministic test scenarios — a self-completing order-fulfillment flow that exercises all three gateway kinds, an order-to-cash lifecycle that parks on human approval, CSV batch validation driven by a DMN table, an exam with a hard timer deadline, and a travel booking whose required forms are chosen by a decision table. examples/order-to-cash-app.html is a self-contained page you can open in a browser with no server at all. Every one of them is described — in German and English, in business terms and technically — in the handbook's Beispiele chapter (/handbuch.html#beispiele on a running server), which renders each diagram and installs the example into your own instance in one click; the per-worker commissioning runbooks sit beside it under #runbooks.

Documentation

  • Installation guide — get the binary running on a server: Linux/systemd, Windows, macOS, auth, TLS, backups, and every flag and environment variable
  • Architecture overview — the canonical reference for how the system fits together
  • Runtime contract — what you may depend on, what is an implementation detail, and how atlas labels standard versus atlas-defined behaviour
  • Architecture Decision Records — why things are the way they are
  • Conformance suite — what BPMN atlas covers, and the oracles that prove it
  • Benchmarks — the performance harness and its published baseline
  • Postman onboarding kit — import the collection + environment and drive the HTTP API (deploy, run instances, work user tasks) in five minutes
  • n8n comparison — where integration automation and durable BPMN orchestration differ, and how they can work together
  • MIM comparison — Microsoft Identity Manager's connector surface mapped to atlas Worker Types, and the gaps that remain
  • Catalogue standards — the catalogue, order, and inventory models mapped onto TM Forum's TMF620/622/637, the Open Service Broker API, and open-source identity governance: what corresponds, where atlas differs on purpose, and what was examined and found inapplicable
  • Deploying atlas — the container image (Dockerfile) and a Helm chart for running the server on Kubernetes
  • Compliance — the Swiss federal ISDS-Konzept (P042-Hi01) answered for atlas, in German, plus the product gaps a Bund deployment would have to close
  • Programmes — tracked delivery overview of multi-slice work, dependencies and linked PRs · Programme delivery protocol — rules for human and agent collaboration
  • Roadmap — where this is going · Changelog — what changed in each release
  • Contributing · Development · Security

Working on this with an AI coding agent? Start at AGENTS.md (Claude Code: CLAUDE.md). It carries the invariants, the exact build/test commands, and how to approach a task.

Goals

  • Durable execution that survives crashes and runs long-lived processes (timers, message events, multi-week instances)
  • Full BPMN 2.0 coverage including subprocesses, boundary events, and event subprocesses
  • High throughput — many instances per second per partition
  • Pure Go, no CGO (embedded LSM-tree state store, e.g. Pebble)

Non-goals (for now)

  • A bespoke graphical modeler — atlas ships a browser viewer/editor by embedding the standard bpmn-js toolkit (ADR-0011), rather than reimplementing BPMN rendering from scratch
  • A full-stack, batteries-included server beyond the single self-contained binary — the engine core stays a library first, embedded by the server

License

GNU Affero General Public License v3.0 only (AGPL-3.0-only). Strong copyleft with a network-use clause: anyone who runs a modified atlas as a network service must make their modified source available to its users. Contributions are accepted under the same license (see CONTRIBUTING.md).


Built by someone who appreciates a good atlas.

Documentation

Overview

Package atlas is a blazing-fast, durable BPMN 2.x workflow engine.

Atlas compiles BPMN models into a flat, integer-indexed execution graph, records every state transition as an append-only event in a write-ahead log, and materializes live state in an embedded key-value store. See the documents in docs/ for the architecture, design decisions, and roadmap.

This is the module root. Implementation packages live in subdirectories and will be added as the project develops; see ROADMAP.md for status.

Index

Constants

This section is empty.

Variables

View Source
var ADRIndex string

ADRIndex is the index of the decision records, docs/adr/README.md. The release notes read the file name of each record from it, so an entry that cites "ADR-0438" links to that record rather than to the directory it is in: a record's file name cannot be derived from its number, and most entries cite the number alone. `go test ./docs/adr` keeps the index in step with the directory.

View Source
var Changelog string

Changelog is CHANGELOG.md as this binary was built from it. The Console's release notes are read from it while the server runs (ADR-0444), so a changelog entry reaches the Console with nothing generated, committed or regenerated in between.

It is embedded here because go:embed reaches only files at or below the directory of the package that embeds them, and the module root is the one package CHANGELOG.md sits in.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
api
Package api is the single-binary server surface for Atlas: it embeds one engine.Processor behind an HTTP API and serves an embedded web UI, so a single self-contained binary can deploy BPMN models, run instances, and (as the UI grows) view them in a browser.
Package api is the single-binary server surface for Atlas: it embeds one engine.Processor behind an HTTP API and serves an embedded web UI, so a single self-contained binary can deploy BPMN models, run instances, and (as the UI grows) view them in a browser.
apppkg
Package apppkg is the application package (ADR-0437, ADR-0467): the directory or archive an application and its shop move between installations in, as `atlas export` writes it from a terminal and the Console downloads it.
Package apppkg is the application package (ADR-0437, ADR-0467): the directory or archive an application and its shop move between installations in, as `atlas export` writes it from a terminal and the Console downloads it.
archsketch
Package archsketch is a release's architecture snapshot (ADR-0471): what a process application offers to its environment and what it depends on, taken by value when the release is recorded, and the renderings a reader takes away from it — a deterministic SVG and an ArchiMate Open Exchange document.
Package archsketch is a release's architecture snapshot (ADR-0471): what a process application offers to its environment and what it depends on, taken by value when the release is recorded, and the renderings a reader takes away from it — a deterministic SVG and an ArchiMate Open Exchange document.
blueprintregistry
Public registry transport is deliberately isolated from the atlas run loop.
Public registry transport is deliberately isolated from the atlas run loop.
brandimage
Package brandimage is the one place that decides what counts as a brand mark: which formats Atlas accepts, whether a body really is one, and under what headers it is handed back to a browser.
Package brandimage is the one place that decides what counts as a brand mark: which formats Atlas accepts, whether a body really is one, and under what headers it is handed back to a browser.
capability
Package capability serves the business-architecture area: the business capabilities an organisation must be able to perform, and the value streams whose stages they perform.
Package capability serves the business-architecture area: the business capabilities an organisation must be able to perform, and the value streams whose stages they perform.
catalog
Package catalog holds the product catalogue a self-service portal orders from: what may be ordered, how the parts of a product relate, and what a release proves before anything can be ordered against it.
Package catalog holds the product catalogue a self-service portal orders from: what may be ordered, how the parts of a product relate, and what a release proves before anything can be ordered against it.
collab
Package collab implements the first slice of ADR-0140: live collaborative modeling sessions.
Package collab implements the first slice of ADR-0140: live collaborative modeling sessions.
contentsource
Package contentsource reads a service's content — its description, its keywords, its picture — from a system outside Atlas, and decides whether any of it may reach the shop (ADR-0491).
Package contentsource reads a service's content — its description, its keywords, its picture — from a system outside Atlas, and decides whether any of it may reach the shop (ADR-0491).
contentsource/wikifake
Package wikifake is a wikiwikibangbang that lives in a test: the routes Atlas's adapter reads, answering from pages a test writes, under an https test server.
Package wikifake is a wikiwikibangbang that lives in a test: the routes Atlas's adapter reads, answering from pages a test writes, under an https test server.
decisiondoc
Package decisiondoc serves decision documentation (ADR-0324): a published DMN decision as a stored PDF plus the prose and rule tables it describes, its version history, and the revocable public link a reader without an account follows.
Package decisiondoc serves decision documentation (ADR-0324): a published DMN decision as a stored PDF plus the prose and rule tables it describes, its version history, and the revocable public link a reader without an account follows.
feelgen
Package feelgen writes a FEEL expression from a conversation with the author (ADR-0445).
Package feelgen writes a FEEL expression from a conversation with the author (ADR-0445).
formgen
Package formgen generates a form from a description and from the process it belongs to (ADR-0260).
Package formgen generates a form from a description and from the process it belongs to (ADR-0260).
formlookup
Package formlookup serves a task form's remote data sources: a person types into a directory field and sees the first matching entries of a directory the server never copies (ADR-0473).
Package formlookup serves a task form's remote data sources: a person types into a directory field and sees the first matching entries of a directory the server never copies (ADR-0473).
httpapi
Package httpapi holds the primitives every Atlas HTTP handler is written against: how a response is written, who the caller is, and where the request came from.
Package httpapi holds the primitives every Atlas HTTP handler is written against: how a response is written, who the caller is, and where the request came from.
identity
Package identity holds the external identities Atlas users link and the delegated connections they authorize, and brokers the short-lived credentials those connections yield (ADR-0475 §3, §4).
Package identity holds the external identities Atlas users link and the delegated connections they authorize, and brokers the short-lived credentials those connections yield (ADR-0475 §3, §4).
importplan
Package importplan is the vocabulary an import shares when it asks before it replaces anything (ADR-0467): how an artifact an import carries compares with the one this server holds, what the caller decided for those that differ, and what became of each.
Package importplan is the vocabulary an import shares when it asks before it replaces anything (ADR-0467): how an artifact an import carries compares with the one this server holds, what the caller decided for those that differ, and what became of each.
infomodel
Package infomodel holds Atlas's process information model: a UML class-diagram subset that gives BPMN's data objects a type they can share across processes (ADR-0230).
Package infomodel holds Atlas's process information model: a UML class-diagram subset that gives BPMN's data objects a type they can share across processes (ADR-0230).
layout
Package layout generates BPMN diagram interchange (BPMN-DI) for models that carry none, and regenerates it for models whose layout a user has tangled.
Package layout generates BPMN diagram interchange (BPMN-DI) for models that carry none, and regenerates it for models whose layout a user has tangled.
order
Package order holds what was asked for: an order against one catalogue release, its lines, and how a line's outcome reaches the lines that depend on it.
Package order holds what was asked for: an order against one catalogue release, its lines, and how a line's outcome reaches the lines that depend on it.
panorama
Package panorama owns Atlas's design-time ArchiMate models (ADR-0189).
Package panorama owns Atlas's design-time ArchiMate models (ADR-0189).
playground
Package playground serves the Modeler's Playground area: a caller opens a session on a model, feeds it cases, and drives it — free-running, or one occurrence at a time with a person answering the human tasks.
Package playground serves the Modeler's Playground area: a caller opens a session on a model, feeds it cases, and drives it — free-running, or one occurrence at a time with a person answering the human tasks.
policy
Package policy is the policy administration point (ADR-0475 §9): administrators write policies as drafts, publish them as immutable numbered versions, switch them on and off, and try them against a simulated request.
Package policy is the policy administration point (ADR-0475 §9): administrators write policies as drafts, publish them as immutable numbered versions, switch them on and off, and try them against a simulated request.
processdoc
Package processdoc serves process documentation (ADR-0143): a published BPMN process as a stored PDF plus the element prose it describes, its version history, and the revocable public link a reader without an account follows.
Package processdoc serves process documentation (ADR-0143): a published BPMN process as a stored PDF plus the element prose it describes, its version history, and the revocable public link a reader without an account follows.
releasenotes
Package releasenotes serves the release notes the Console's landing page shows.
Package releasenotes serves the release notes the Console's landing page shows.
runloop
Package runloop carries Atlas's single-writer boundary for design-time and API state.
Package runloop carries Atlas's single-writer boundary for design-time and API state.
sidecar
Package sidecar is the durable-file discipline Atlas's design-time stores share.
Package sidecar is the durable-file discipline Atlas's design-time stores share.
startfavourites
Package startfavourites keeps the processes each person starred on the Tasks app's Start view, so the list they start from most opens with those at the top on every browser and device they sign in from (ADR-0466).
Package startfavourites keeps the processes each person starred on the Tasks app's Start view, so the list they start from most opens with those at the top on every browser and device they sign in from (ADR-0466).
storage
Package storage watches the disk under the data directory and keeps the server from running it full (ADR-0481).
Package storage watches the disk under the data directory and keeps the server from running it full (ADR-0481).
taskfolder
Package taskfolder serves the Tasks app's folders: the saved filters a person builds for themselves out of listboxes, so a recurring question ("what is open on customer enquiries?") becomes a place in the sidebar instead of something retyped into the search box every morning (ADR-0268).
Package taskfolder serves the Tasks app's folders: the saved filters a person builds for themselves out of listboxes, so a recurring question ("what is open on customer enquiries?") becomes a place in the sidebar instead of something retyped into the search box every morning (ADR-0268).
token
Package token mints and validates Atlas's opaque share tokens.
Package token mints and validates Atlas's opaque share tokens.
userprefs
Package userprefs stores how one person reads the console: how a number is written, which instant a timestamp means, which words the translated screens use (ADR-0459), and whether the console is drawn light or dark (ADR-0507).
Package userprefs stores how one person reads the console: how a number is written, which instant a timestamp means, which words the translated screens use (ADR-0459), and whether the console is drawn light or dark (ADR-0507).
vault
Package vault is Atlas's engine-internal encrypted secret store: worker credentials sealed at rest with AES-256-GCM under a master key that never leaves the operator's control (ADR-0069), on by default with a generated key file when no operator key is supplied (ADR-0070).
Package vault is Atlas's engine-internal encrypted secret store: worker credentials sealed at rest with AES-256-GCM under a master key that never leaves the operator's control (ADR-0069), on by default with a generated key file when no operator key is supplied (ADR-0070).
workerquery
Package workerquery is the Worker protocol's second message kind: a query, answered by a Worker Instance with its Worker's credential and never written anywhere (ADR-0473).
Package workerquery is the Worker protocol's second message kind: a query, answered by a Worker Instance with its Worker's credential and never written anywhere (ADR-0473).
Package authz is Atlas's policy decision point: it decides whether one external Worker action may run, and why (ADR-0475).
Package authz is Atlas's policy decision point: it decides whether one external Worker action may run, and why (ADR-0475).
Package benchmarks holds Atlas's reproducible performance harness (work programme B of the v0.2.0 "Proof of Reliability & Performance" initiative).
Package benchmarks holds Atlas's reproducible performance harness (work programme B of the v0.2.0 "Proof of Reliability & Performance" initiative).
Package checkpoint holds the on-disk format primitives for engine recovery checkpoints (ADR-0133).
Package checkpoint holds the on-disk format primitives for engine recovery checkpoints (ADR-0133).
cmd
atlas command
Command atlas is the single-binary Atlas server: one self-contained process that embeds the engine, exposes an HTTP API, and serves the web UI.
Command atlas is the single-binary Atlas server: one self-contained process that embeds the engine, exposes an HTTP API, and serves the web UI.
Package compiler turns a BPMN model into an immutable, integer-indexed CompiledProcess (ADR-0004).
Package compiler turns a BPMN model into an immutable, integer-indexed CompiledProcess (ADR-0004).
Package conformance is Atlas's curated BPMN conformance suite: a collection of small, deterministic process models plus the oracles that prove the engine executes them correctly.
Package conformance is Atlas's curated BPMN conformance suite: a collection of small, deterministic process models plus the oracles that prove the engine executes them correctly.
differential
Package differential is the conformance suite's cross-engine oracle: it runs the same process on Atlas and on an independent reference BPMN engine and compares a normalized outcome, so a control-flow bug shows up as disagreement with a second implementation — the one oracle the suite's other checks (golden, replay, invariants, metamorphic) can't provide, since they all trust Atlas alone.
Package differential is the conformance suite's cross-engine oracle: it runs the same process on Atlas and on an independent reference BPMN engine and compares a normalized outcome, so a control-flow bug shows up as disagreement with a second implementation — the one oracle the suite's other checks (golden, replay, invariants, metamorphic) can't provide, since they all trust Atlas alone.
connector
ad
Package ad integrates Active Directory as a service-task Worker Type: a BPMN AD task performs an AD-specific provisioning operation — create a user, set a password, enable or disable an account, or add/remove a group member — against a model-authored server through the job path (ADR-0166), the same seam the ldap package uses (ADR-0154).
Package ad integrates Active Directory as a service-task Worker Type: a BPMN AD task performs an AD-specific provisioning operation — create a user, set a password, enable or disable an account, or add/remove a group member — against a model-authored server through the job path (ADR-0166), the same seam the ldap package uses (ADR-0154).
agent
Package agent is the Worker Type behind an agent-driven ad-hoc subprocess (ADR-0253): it works the round job the container parks on, asks a model which of the container's tools to run next, and hands that choice back as the job's completion.
Package agent is the Worker Type behind an agent-driven ad-hoc subprocess (ADR-0253): it works the round job the container parks on, asks a model which of the container's tools to run next, and hands that choice back as the job's completion.
carddav/catalog
Package catalog is the CardDAV Worker's operation table and the contact shape a model reads and writes (ADR-0490): which values each operation needs and takes, what it returns, and which keys a contact object may carry.
Package catalog is the CardDAV Worker's operation table and the contact shape a model reads and writes (ADR-0490): which values each operation needs and takes, what it returns, and which keys a contact object may carry.
clientreg
Package clientreg is the client registry every Worker Type shares: a name → client map that a worker resolves a model's worker reference through, plus the part that is not a map — *why* a worker an operator did configure is missing from it.
Package clientreg is the client registry every Worker Type shares: a name → client map that a worker resolves a model's worker reference through, plus the part that is not a map — *why* a worker an operator did configure is missing from it.
clio
Package clio integrates a clio event store as a server-registered Atlas worker: a BPMN clio "write-events" task appends an event to a configured clio instance through the job path (ADR-0036), mirroring how the dmn package delegates a decision to temis (ADR-0014).
Package clio integrates a clio event store as a server-registered Atlas worker: a BPMN clio "write-events" task appends an event to a configured clio instance through the job path (ADR-0036), mirroring how the dmn package delegates a decision to temis (ADR-0014).
csvimport
Package csvimport is Atlas's in-process worker for the CSV-to-JSON Worker Type task (ADR-0139), and the CSV parser the API's upload-validation endpoint shares with it (ADR-0084).
Package csvimport is Atlas's in-process worker for the CSV-to-JSON Worker Type task (ADR-0139), and the CSV parser the API's upload-validation endpoint shares with it (ADR-0084).
discord
Package discord integrates Discord as a server-registered Atlas worker: a BPMN Discord task performs one chat operation — send a message, edit one, delete one, read one, list a channel's messages, or open a thread — against a configured Discord Worker via the job path (ADR-0258).
Package discord integrates Discord as a server-registered Atlas worker: a BPMN Discord task performs one chat operation — send a message, edit one, delete one, read one, list a channel's messages, or open a thread — against a configured Discord Worker via the job path (ADR-0258).
entra
Package entra provisions identities in Microsoft Entra ID (formerly Azure AD) through the Microsoft Graph API on behalf of a BPMN service task (ADR-0172).
Package entra provisions identities in Microsoft Entra ID (formerly Azure AD) through the Microsoft Graph API on behalf of a BPMN service task (ADR-0172).
envname
Package envname turns a worker name or a secret reference into the environment variable it is read from.
Package envname turns a worker name or a secret reference into the environment variable it is read from.
exchange
Package exchange administers Microsoft Exchange — Exchange Online and Exchange Server — on behalf of a BPMN service task (ADR-0462).
Package exchange administers Microsoft Exchange — Exchange Online and Exchange Server — on behalf of a BPMN service task (ADR-0462).
exchange/catalog
Package catalog is the Exchange Worker's operation table: which Exchange cmdlet each low-code operation runs, which parameters a model must and may author for it, and which ones the operation sets itself (ADR-0462).
Package catalog is the Exchange Worker's operation table: which Exchange cmdlet each low-code operation runs, which parameters a model must and may author for it, and which ones the operation sets itself (ADR-0462).
googlecontacts
Package googlecontacts integrates Google Contacts as a Worker Type (ADR-0203): a BPMN service task performs one operation on an address book — find a contact by its e-mail address, phone number or a custom field, read one, list a label's members, search, create, update or delete a contact, put a label on one or take it off — or searches the organization's directory, through the People API (ADR-0476).
Package googlecontacts integrates Google Contacts as a Worker Type (ADR-0203): a BPMN service task performs one operation on an address book — find a contact by its e-mail address, phone number or a custom field, read one, list a label's members, search, create, update or delete a contact, put a label on one or take it off — or searches the organization's directory, through the People API (ADR-0476).
googlecontacts/catalog
Package catalog is the Google Contacts Worker's operation table and the contact shape a model reads and writes (ADR-0476): which values each operation needs and takes, what it returns, and which keys a contact object may carry.
Package catalog is the Google Contacts Worker's operation table and the contact shape a model reads and writes (ADR-0476): which values each operation needs and takes, what it returns, and which keys a contact object may carry.
googlesheets
Package googlesheets integrates Google Sheets as a Worker Type (ADR-0203): a BPMN service task performs one spreadsheet operation — create a spreadsheet, add a sheet to one, read a range, write a range, append rows, clear a range, delete a sheet, or trash the whole file — against a Worker an operator configured, via the job path (ADR-0235).
Package googlesheets integrates Google Sheets as a Worker Type (ADR-0203): a BPMN service task performs one spreadsheet operation — create a spreadsheet, add a sheet to one, read a range, write a range, append rows, clear a range, delete a sheet, or trash the whole file — against a Worker an operator configured, via the job path (ADR-0235).
jira
Package jira integrates Atlassian Jira as a server-registered Atlas worker: a BPMN Jira task performs one issue-tracker operation — create an issue, read one, update it, move it through its workflow, comment on it, assign it, search for issues, or look an account up — against a configured Jira instance via the job path (ADR-0201).
Package jira integrates Atlassian Jira as a server-registered Atlas worker: a BPMN Jira task performs one issue-tracker operation — create an issue, read one, update it, move it through its workflow, comment on it, assign it, search for issues, or look an account up — against a configured Jira instance via the job path (ADR-0201).
ldap
Package ldap integrates a generic LDAP directory as a service-task Worker Type: a BPMN LDAP task performs a directory operation — search an entry, add / modify / delete an entry, or set an entry's password — against a model-authored server through the job path (ADR-0154), the same seam the rest and scim packages use for HTTP (ADR-0067/0151).
Package ldap integrates a generic LDAP directory as a service-task Worker Type: a BPMN LDAP task performs a directory operation — search an entry, add / modify / delete an entry, or set an entry's password — against a model-authored server through the job path (ADR-0154), the same seam the rest and scim packages use for HTTP (ADR-0067/0151).
ldif
Package ldif reads and writes directory entries held in a file — LDIF (RFC 2849) and DSML v1 (ADR-0171).
Package ldif reads and writes directory entries held in a file — LDIF (RFC 2849) and DSML v1 (ADR-0171).
lookup
Package lookup is the wire shape of a form lookup: what the server asks a Worker Type when a person searches a remote data source from a task form, and what the Worker Type answers (ADR-0473).
Package lookup is the wire shape of a form lookup: what the server asks a Worker Type when a person searches a remote data source from a task form, and what the Worker Type answers (ADR-0473).
mail
Package mail integrates an outbound e-mail provider as a server-registered Atlas worker: a BPMN mail task sends a model-authored message through a configured provider via the job path (ADR-0079), mirroring how the clio package delegates an append to a registry-managed endpoint (ADR-0036).
Package mail integrates an outbound e-mail provider as a server-registered Atlas worker: a BPMN mail task sends a model-authored message through a configured provider via the job path (ADR-0079), mirroring how the clio package delegates an append to a registry-managed endpoint (ADR-0036).
nettimeout
Package nettimeout defines the outbound-call budget every Atlas worker shares.
Package nettimeout defines the outbound-call budget every Atlas worker shares.
oauth2
Package oauth2 is the OAuth2 token machinery every Atlas worker that speaks to a token-protected API shares: an expiry-aware cache, the token-endpoint exchange, and the two grants that are not specific to any one vendor.
Package oauth2 is the OAuth2 token machinery every Atlas worker that speaks to a token-protected API shares: an expiry-aware cache, the token-endpoint exchange, and the two grants that are not specific to any one vendor.
paperless
Package paperless provides metadata-only Paperless-ngx operations for external workers.
Package paperless provides metadata-only Paperless-ngx operations for external workers.
remedy
Package remedy integrates BMC Remedy (BMC Helix ITSM / the AR System) as a server-registered Atlas worker: a BPMN Remedy task creates an entry (e.g.
Package remedy integrates BMC Remedy (BMC Helix ITSM / the AR System) as a server-registered Atlas worker: a BPMN Remedy task creates an entry (e.g.
remedy/mock
Package remedymock is an in-memory stand-in for a BMC Remedy AR System REST API, so the Remedy worker (ADR-0106) can be exercised end to end without a real Remedy / Helix ITSM instance.
Package remedymock is an in-memory stand-in for a BMC Remedy AR System REST API, so the Remedy worker (ADR-0106) can be exercised end to end without a real Remedy / Helix ITSM instance.
rest
Package rest integrates an external HTTP-REST API as a service-task Worker Type: a BPMN REST task calls a model-authored endpoint through the job path (ADR-0036/0067), mirroring how the dmn package delegates a decision to temis (ADR-0014).
Package rest integrates an external HTTP-REST API as a service-task Worker Type: a BPMN REST task calls a model-authored endpoint through the job path (ADR-0036/0067), mirroring how the dmn package delegates a decision to temis (ADR-0014).
rest/openapimock
Package openapimock serves a mock REST API from an OpenAPI 3 document, so a process with a REST task (ADR-0067) can be run end to end before the API it calls exists — or without pointing a draft at the real one (ADR-0217).
Package openapimock serves a mock REST API from an OpenAPI 3 document, so a process with a REST task (ADR-0067) can be run end to end before the API it calls exists — or without pointing a draft at the real one (ADR-0217).
rest/openapitemplate
Package openapitemplate turns an OpenAPI document into element-template packages — one per operation — in the shape github.com/pblumer/atlas/api's repository catalog already uses (ADR-0027 chose the bpmn.io element-templates schema; ADR-0081 wraps one in a package with an id, a version and an author).
Package openapitemplate turns an OpenAPI document into element-template packages — one per operation — in the shape github.com/pblumer/atlas/api's repository catalog already uses (ADR-0027 chose the bpmn.io element-templates schema; ADR-0081 wraps one in a package with an id, a version and an author).
s3
Package s3 integrates an S3-compatible object store as a server-registered Atlas Worker Type: a BPMN S3 task performs one object operation — put one down, read a small one back, ask whether it is there, list what is under a prefix, copy one, delete one, or mint a time-limited URL somebody can open it with — against a configured S3 Worker via the job path (ADR-0442).
Package s3 integrates an S3-compatible object store as a server-registered Atlas Worker Type: a BPMN S3 task performs one object operation — put one down, read a small one back, ask whether it is there, list what is under a prefix, copy one, delete one, or mint a time-limited URL somebody can open it with — against a configured S3 Worker via the job path (ADR-0442).
scim
Package scim integrates a SCIM 2.0 service provider as a service-task Worker Type (RFC 7643/7644): a BPMN SCIM task performs a resource operation — create, get, replace, patch, delete, or search a User/Group — against a model-authored provider endpoint through the job path (ADR-0153), the same seam the rest package uses for a generic HTTP call (ADR-0067).
Package scim integrates a SCIM 2.0 service provider as a service-task Worker Type (RFC 7643/7644): a BPMN SCIM task performs a resource operation — create, get, replace, patch, delete, or search a User/Group — against a model-authored provider endpoint through the job path (ADR-0153), the same seam the rest package uses for a generic HTTP call (ADR-0067).
script
Package script is Atlas's in-process worker for polyglot script tasks (PowerShell, Python, JavaScript — ADR-0047).
Package script is Atlas's in-process worker for polyglot script tasks (PowerShell, Python, JavaScript — ADR-0047).
sharepoint
Package sharepoint integrates Microsoft SharePoint as a server-registered Atlas worker: a BPMN SharePoint task performs one step in a model-authored site — create, read, update, delete or list the items of a list, or upload, download, inspect, list, create or delete what a document library holds — through a configured provider via the job path (ADR-0141, amended), mirroring how the mail package delegates a send to a registry-managed provider (ADR-0079).
Package sharepoint integrates Microsoft SharePoint as a server-registered Atlas worker: a BPMN SharePoint task performs one step in a model-authored site — create, read, update, delete or list the items of a list, or upload, download, inspect, list, create or delete what a document library holds — through a configured provider via the job path (ADR-0141, amended), mirroring how the mail package delegates a send to a registry-managed provider (ADR-0079).
soap
Package soap integrates a SOAP / Web Services (WSDL) endpoint as a service-task worker: a BPMN SOAP task invokes an operation — reading identities (import) or provisioning accounts (outbound) — against a model-authored web-service endpoint through the job path (ADR-0165), the same seam the rest package uses for a generic HTTP call (ADR-0067).
Package soap integrates a SOAP / Web Services (WSDL) endpoint as a service-task worker: a BPMN SOAP task invokes an operation — reading identities (import) or provisioning accounts (outbound) — against a model-authored web-service endpoint through the job path (ADR-0165), the same seam the rest package uses for a generic HTTP call (ADR-0067).
sqldb
Package sqldb runs one SQL statement against a relational database on behalf of a BPMN service task — for Microsoft SQL Server, MariaDB, or PostgreSQL (ADR-0173).
Package sqldb runs one SQL statement against a relational database on behalf of a BPMN service task — for Microsoft SQL Server, MariaDB, or PostgreSQL (ADR-0173).
swisscomnatelgo
Package swisscomnatelgo provides a contract-independent, in-memory simulation of the publicly advertised NATEL go capabilities.
Package swisscomnatelgo provides a contract-independent, in-memory simulation of the publicly advertised NATEL go capabilities.
teamsphone
Package teamsphone provisions Microsoft Teams Phone voice apps — call queues and auto attendants — the resource accounts that answer their calls, and the phone numbers people and voice apps are reached at, on behalf of a BPMN service task (ADR-0463).
Package teamsphone provisions Microsoft Teams Phone voice apps — call queues and auto attendants — the resource accounts that answer their calls, and the phone numbers people and voice apps are reached at, on behalf of a BPMN service task (ADR-0463).
temis
Package temis integrates a central temis decision service as a server-registered Atlas worker: a business rule task marked <atlas:temisConnector> delegates its decision to a configured temis instance through the job path (ADR-0050), instead of the embedded temis library that evaluates a local decision (ADR-0014).
Package temis integrates a central temis decision service as a server-registered Atlas worker: a business rule task marked <atlas:temisConnector> delegates its decision to a configured temis instance through the job path (ADR-0050), instead of the embedded temis library that evaluates a local decision (ADR-0014).
webscrape
Package webscrape integrates web scraping as a service-task worker: a BPMN web-scraping task fetches a model-authored URL and extracts the elements matching a CSS selector through the job path (ADR-0118), mirroring how the rest package calls a model-authored HTTP endpoint (ADR-0067).
Package webscrape integrates web scraping as a service-task worker: a BPMN web-scraping task fetches a model-authored URL and extracts the elements matching a CSS selector through the job path (ADR-0118), mirroring how the rest package calls a model-authored HTTP endpoint (ADR-0067).
wikiwikibangbang/catalog
Package catalog is the wikiwikibangbang Worker's operation table (ADR-0498): which values each operation needs and takes, what it returns, and the checks a deploy and a run share.
Package catalog is the wikiwikibangbang Worker's operation table (ADR-0498): which values each operation needs and takes, what it returns, and the checks a deploy and a run share.
Package dmn integrates the temis DMN decision engine (github.com/pblumer/temis) into Atlas, so a BPMN business rule task can delegate a decision and get an answer back.
Package dmn integrates the temis DMN decision engine (github.com/pblumer/temis) into Atlas, so a BPMN business rule task can delegate a decision and get an answer back.
docs
adr
Package adr carries the ADR directory's own conventions as code: the parser for a decision record, the guard tests in adr_test.go that keep the directory and its index honest, and the merge-time numbering below.
Package adr carries the ADR directory's own conventions as code: the parser for a decision record, the guard tests in adr_test.go that keep the directory and its index honest, and the merge-time numbering below.
adr/cmd/adrnum command
Command adrnum assigns a number to every architecture decision record that is still in flight, and makes the repository agree about it.
Command adrnum assigns a number to every architecture decision record that is still in flight, and makes the repository agree about it.
Package engine is the heart of Atlas: a single-writer processor that folds commands into durable events and applies them to state.
Package engine is the heart of Atlas: a single-writer processor that folds commands into durable events and applies them to state.
Package eventcatalog is the one list of the events Atlas emits (ADR-0435): under which name, meaning what, carrying what, through which channel, since when and how stable.
Package eventcatalog is the one list of the events Atlas emits (ADR-0435): under which name, meaning what, carrying what, through which channel, since when and how stable.
Package expr is Atlas's boundary to a FEEL engine.
Package expr is Atlas's boundary to a FEEL engine.
feelers
Package feelers renders the template language Atlas's forms already speak.
Package feelers renders the template language Atlas's forms already speak.
internal
certstore
Package certstore signs with a private key held in the Windows certificate store, named by its certificate's SHA-1 thumbprint, without ever reading the key out of the store (ADR-0172, amended).
Package certstore signs with a private key held in the Windows certificate store, named by its certificate's SHA-1 thumbprint, without ever reading the key out of the store (ADR-0172, amended).
dirsync
Package dirsync opens a directory so that fsyncing it makes the creates, renames and removes inside it durable — the step the WAL, checkpoints and every design-time store take after changing a directory's entries.
Package dirsync opens a directory so that fsyncing it makes the creates, renames and removes inside it durable — the step the WAL, checkpoints and every design-time store take after changing a directory's entries.
diskspace
Package diskspace reads how large the file system holding a directory is and how much of it this process may still write — the numbers the storage monitor decides on (ADR-0481).
Package diskspace reads how large the file system holding a directory is and how much of it this process may still write — the numbers the storage monitor decides on (ADR-0481).
endpoint
Package endpoint reduces a configured endpoint to the three parts an architecture sketch shows of it — scheme, host and port — and to nothing else (ADR-0471).
Package endpoint reduces a configured endpoint to the three parts an architecture sketch shows of it — scheme, host and port — and to nothing else (ADR-0471).
impldigest
Package impldigest names the implementation of a built-in Worker Type by the bytes it is compiled from, so that conformance evidence can be bound to it (ADR-0483, "Digests and implementation identity").
Package impldigest names the implementation of a built-in Worker Type by the bytes it is compiled from, so that conformance evidence can be bound to it (ADR-0483, "Digests and implementation identity").
ownerfile
Package ownerfile makes a file readable and writable by the account running this process and by nobody else, and checks that it is.
Package ownerfile makes a file readable and writable by the account running this process and by nobody else, and checks that it is.
sharedread
Package sharedread opens a file for reading without stopping anyone else from deleting it or renaming another file over it — the latter, on Windows, with a rename that asks for POSIX semantics, as os.Root.Rename does.
Package sharedread opens a file for reading without stopping anyone else from deleting it or renaming another file over it — the latter, on Windows, with a rename that asks for POSIX semantics, as os.Root.Rename does.
sysproxy
Package sysproxy chooses the proxy an outbound HTTP request goes through the way .NET, and so PowerShell, chooses it on the same host (ADR-0464).
Package sysproxy chooses the proxy an outbound HTTP request goes through the way .NET, and so PowerShell, chooses it on the same host (ADR-0464).
trustedproxy
Package trustedproxy takes a client's address from the proxy in front of Atlas, and from nobody else (ADR-0448).
Package trustedproxy takes a client's address from the proxy in front of Atlas, and from nobody else (ADR-0448).
Package job is Atlas's in-process worker harness: it bridges the engine's activatable jobs to worker handlers and feeds their results back as commands (ADR-0007, streaming pull with completion-as-command).
Package job is Atlas's in-process worker harness: it bridges the engine's activatable jobs to worker handlers and feeds their results back as commands (ADR-0007, streaming pull with completion-as-command).
Package jobtype carries Atlas's engine-wide job-type table: the one mapping from a job type's name to the integer index a job on disk carries.
Package jobtype carries Atlas's engine-wide job-type table: the one mapping from a job type's name to the integer index a job on disk carries.
Package limits is the one place that names every resource budget in an Atlas installation, and the one way to change them.
Package limits is the one place that names every resource budget in an Atlas installation, and the one way to change them.
Package logging gives Atlas's operational logs a stable contract (ADR-0142).
Package logging gives Atlas's operational logs a stable contract (ADR-0142).
Package mcp is Atlas's Model Context Protocol server: it lets an AI agent drive a running Atlas server through tools — deploy a BPMN model, manage design-time projects and artifacts, start an instance, complete human tasks, inspect live runtime state, and maintain the self-service shop's product catalogue.
Package mcp is Atlas's Model Context Protocol server: it lets an AI agent drive a running Atlas server through tools — deploy a BPMN model, manage design-time projects and artifacts, start an instance, complete human tasks, inspect live runtime state, and maintain the self-service shop's product catalogue.
Package metrics is Atlas's Prometheus exposition: an owned registry, the naming conventions every Atlas metric follows, and the HTTP handler that serves them (ADR-0142).
Package metrics is Atlas's Prometheus exposition: an owned registry, the naming conventions every Atlas metric follows, and the HTTP handler that serves them (ADR-0142).
Package mimimport converts Microsoft Identity Manager (MIM/FIM) workflow definitions into Atlas-executable BPMN 2.0 XML.
Package mimimport converts Microsoft Identity Manager (MIM/FIM) workflow definitions into Atlas-executable BPMN 2.0 XML.
Package model defines the records that flow through Atlas and their on-disk binary encoding.
Package model defines the records that flow through Atlas and their on-disk binary encoding.
Package opensearch exports Atlas's durable event history to an OpenSearch (or API-compatible Elasticsearch) index.
Package opensearch exports Atlas's durable event history to an OpenSearch (or API-compatible Elasticsearch) index.
Package playground runs a BPMN model on the real Atlas engine inside a throwaway sandbox, on a clock the caller owns.
Package playground runs a BPMN model on the real Atlas engine inside a throwaway sandbox, on a clock the caller owns.
Package promquery asks a Prometheus-compatible store what it recorded about an Atlas node (ADR-0189 P5b).
Package promquery asks a Prometheus-compatible store what it recorded about an Atlas node (ADR-0189 P5b).
Package rungraph builds the run graph's CSR projection: the second surface of [ADR-0404], never mixed with the structural starmap and never authoritative.
Package rungraph builds the run graph's CSR projection: the second surface of [ADR-0404], never mixed with the structural starmap and never authoritative.
Package state is Atlas's materialized state store: the queryable fold of the event log (ADR-0001), backed by Pebble (ADR-0003).
Package state is Atlas's materialized state store: the queryable fold of the event log (ADR-0001), backed by Pebble (ADR-0003).
Package tracing gives Atlas distributed traces (ADR-0142).
Package tracing gives Atlas distributed traces (ADR-0142).
Package wal is Atlas's write-ahead log: a segmented, append-only record store with group commit.
Package wal is Atlas's write-ahead log: a segmented, append-only record store with group commit.
Package worker is Atlas's out-of-process job worker: the binary, run as a client of its own HTTP API, leasing jobs of named types and reporting what happened (ADR-0157 step 5, over the protocol of ADR-0007).
Package worker is Atlas's out-of-process job worker: the binary, run as a client of its own HTTP API, leasing jobs of named types and reporting what happened (ADR-0157 step 5, over the protocol of ADR-0007).
Package workertype contains the design-time Worker Type manifest contract from ADR-0207.
Package workertype contains the design-time Worker Type manifest contract from ADR-0207.
evidence
Package evidence keeps and checks the evidence that one built-in Worker Type operation conforms to one technical capability contract (ADR-0483).
Package evidence keeps and checks the evidence that one built-in Worker Type operation conforms to one technical capability contract (ADR-0483).
evidence/cmd/evidence command
Command evidence creates, renews and verifies the conformance evidence records of built-in Worker Types, and prints the dependency digest of any set of packages (ADR-0483).
Command evidence creates, renews and verifies the conformance evidence records of built-in Worker Types, and prints the dependency digest of any set of packages (ADR-0483).
evidence/gate
Package gate holds the CI check over the evidence records in workertype/evidence/records and nothing else: its test verifies every record against the module, with every registered suite, so a change that moves what a record binds fails until the same change renews the record (ADR-0483).
Package gate holds the CI check over the evidence records in workertype/evidence/records and nothing else: its test verifies every record against the module, with every registered suite, so a change that moves what a record binds fails until the same change renews the record (ADR-0483).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL