A customizable starter, and a required companion to Aletyx Decision Control TowerThe Sidecar is an example project you adapt to your organization’s approval policy — and the workflow engine Aletyx Decision Control Tower depends on at runtime. You customize the workflows; you do not change how it integrates with Tower. A Tower deployment without a matching Sidecar accepts logins but workflow-driven endpoints silently no-op.
Overview
The Aletyx Decision Control Tower Sidecar is a starter project that shows how to build the approval workflows behind a promotion — moving a DMN model from one environment to the next (for example, dev → qa → prd) under human review. It ships with working example workflows and example actions, and it is meant to be forked and tailored to your governance process. The project has two clearly separated layers:- Core (fixed) — the application classes that integrate the Sidecar with Aletyx Decision Control Tower: the callbacks it makes into Tower and the request/response contracts those exchanges use.
- Customizable (yours) — the workflow definitions and the example actions (service steps) they call. This is where you encode your approval policy.
What you can — and cannot — change
Key Capabilities
Workflow Execution
Runs the governance workflows that gate promotions:- Executes the example
standard_promotionworkflow — human review before a model advances to the next environment. - Produces the review tasks (Approve, Change-Request) that appear in the Tower task inbox.
- Drives state transitions and, on approval, calls back into Tower Core to complete the promotion.
Customizable Approval Policy
Because the policy lives in the workflow definition rather than in code, you can add review stages, change assignment, or attach post-approval actions — all without touching the core Tower integration. See Customize the Promotion Workflow.Example External-Service Actions
The starter includes ready-to-study integration actions. Each runs only when the workflow includes it; with the shipped defaults they make no outbound calls (Git push is off until…GITHUB_ENABLED=true, Slack until its token/channel are set):
- Git versioning — commit the promoted model’s files to a Git repository for diffable history.
- Messaging — post a notification (for example, to Slack) when a promotion completes.
- REST callouts — call an external API from a workflow step.
Process & Task State
Serves the runtime state Tower reads — process and task history (the Data Index surface), per-process metrics, and the audit-trail process-diagram (SVG) rendering.Architecture
The Sidecar is one of the three required pieces of a Aletyx Decision Control Tower deployment:- Tower (Spring Boot + SPA) — the portal and governance API.
- Tower Sidecar — the workflow engine described here, with its own PostgreSQL database.
- OIDC provider — external authentication (Microsoft Entra ID or Keycloak).
Use Cases
Enterprise Decision Governance
The Sidecar makes promotions reviewed, long-running workflows rather than ad-hoc API calls — the foundation for separation of duties and auditable approvals across dev → qa → prd.Tailored Governance Without Forking the Platform
Teams adapt the example workflows to their own policy — extra stages, custom actions — while the fixed Tower contract keeps the customization compatible with the platform.Versioned, Auditable Model History
With the Git versioning action enabled, every approved promotion can land the model’s files in a repository, giving regulated teams a diffable, externally-auditable record alongside the Tower audit trail.Getting Started
- Deploy the Sidecar with Tower: see Deployment — both are deployed together, each with its own PostgreSQL database.
- Configure it: see Configuration for the environment-variable reference.
- Customize the workflow: see Customize the Promotion Workflow.
- Enable example actions (optional): see Git Model Versioning.
Next Steps
- Architecture: the core-vs-customizable layers and the Tower contract boundary
- Deployment: run the Sidecar alongside Aletyx Decision Control Tower
- Configuration: environment-variable reference
- Customize the Promotion Workflow: adapt the approval flow to your policy