2.7 KiB
2.7 KiB
Automation Catalog
Architecture only. Automation is NOT a PlatformProduct.
Contract version:automation-catalog.v1
ADR: ADR-023 (v1.1)
1. Purpose
The Automation Catalog defines reusable automation types and packs that products and bundles may reference.
Automation remains a cross-cutting catalog — independent of any single commercial product identity.
2. AutomationType (open registry)
| Field | Type | Meaning |
|---|---|---|
automation_type_code |
string | Open key |
display_name |
string | |
channel_family |
string? | e.g. messaging, schedule, event, ai |
status |
enum | active | reserved | deprecated |
owning_runtime_hint |
string? | Typical executor service |
ext |
object |
Illustrative automation type matrix
| automation_type_code | Display | Family | Status |
|---|---|---|---|
workflow |
Workflow | event | reserved |
webhook |
Webhook | event | reserved |
event_trigger |
Event Trigger | event | reserved |
cron |
Cron | schedule | reserved |
scheduler |
Scheduler | schedule | reserved |
sms |
SMS | messaging | active |
email |
messaging | active | |
push |
Push | messaging | reserved |
rubika |
Rubika | messaging | reserved |
whatsapp |
messaging | reserved | |
telegram |
Telegram | messaging | reserved |
ai_agent |
AI Agent | ai | reserved |
api_trigger |
API Trigger | event | reserved |
internal_event |
Internal Event | event | active |
external_event |
External Event | event | reserved |
Unlimited future types MAY be added as registry entries only.
3. AutomationPack
Logical packaging of one or more automation types for commercial reference:
| Field | Type | Meaning |
|---|---|---|
automation_pack_code |
string | |
display_name |
string | |
automation_type_codes[] |
string[] | |
required_capability_codes[] |
string[] | e.g. sms, email |
required_product_codes[] |
string[] | Optional product deps |
status |
enum | draft | active | retired |
documentation_ref |
string? | |
ext |
object |
Business Bundles and PlatformProducts reference packs by automation_pack_code only — never embed workflow graphs here.
4. Separation rules
- Do not register Automation as
product.automationin the Product Registry. - Communication / future Automation service engines own runtime execution.
- Commercial foundation owns catalog contracts only.
- Recommendation / activation may reference packs; they do not execute them.