enterprise-infrastructure

Build progressive Kailash infrastructure with durable execution, scheduling, and task queuing.

Updated Oct 10, 2025
One-click install
npx skills add https://github.com/FFOO6866/lead2cash --skill enterprise-infrastructure-ffoo6866
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: enterprise-infrastructure
Source: https://github.com/FFOO6866/lead2cash/tree/main/.claude/skills/15-enterprise-infrastructure
Command: npx skills add https://github.com/FFOO6866/lead2cash --skill enterprise-infrastructure-ffoo6866

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps you design and operate a progressive, enterprise-grade infrastructure layer for Kailash workloads, so your workflows can scale from single-process SQLite to multi-worker PostgreSQL/MySQL while staying reliable through durable execution, checkpoints, scheduling, task queues, and idempotency.

Core Features & Use Cases

  • Progressive Infrastructure Levels (0/1/2): Move from in-process SQLite (Level 0) to shared DB persistence (Level 1) to multi-worker execution with a task queue (Level 2) using environment variables only.
  • Dialect-Portable SQL & Safe Identifier Handling: Use a QueryDialect strategy with canonical ? placeholders and mandatory identifier validation to prevent SQL injection and ensure cross-database compatibility.
  • Durable Execution + Checkpointing: Resume workflows after crashes via ExecutionTracker checkpoints, CheckpointManager tiered persistence, and the DurableRequest state machine, optionally wired through DurableWorkflowServer.
  • Distributed Primitives for Enterprise Ops: Scheduler (cron/interval/one-shot) with persistence, SQL task queue with FOR UPDATE SKIP LOCKED, worker registry with heartbeats and dead-worker reaping, and at-most-once semantics through IdempotentExecutor.

Quick Start

Use the enterprise-infrastructure skill to run a resilient scheduled and durable workflow by setting KAILASH_DATABASE_URL (and optionally KAILASH_QUEUE_URL), then wiring WorkflowScheduler for cron and DurableWorkflowServer for durable execution in your service.

Frequently Asked Questions about enterprise-infrastructure

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement durable execution for long-running workflows that resume after crashes?

Durable execution persists workflow state through ExecutionTracker checkpoints and a DurableRequest state machine, allowing long-running workflows to safely resume after crashes via tiered checkpoint persistence and resume contracts.

Can I scale task queues across multiple workers using PostgreSQL and MySQL?

Yes, distributed task queuing scales across PostgreSQL and MySQL using SQL `FOR UPDATE SKIP LOCKED` for safe claim semantics, a worker registry with heartbeats, and automatic dead-worker reaping for multi-worker dispatch.

What's the best way to write SQL that works across SQLite, PostgreSQL, and MySQL?

SQL dialect portability is achieved through a QueryDialect strategy using canonical `?` placeholders with automatic translation and mandatory identifier validation to prevent SQL injection across SQLite, PostgreSQL, and MySQL.

How do I schedule recurring cron jobs and interval executions with crash recovery?

A WorkflowScheduler handles cron, interval, and one-shot scheduling with persistence, ensuring recurring executions survive crashes by storing schedule state in the configured database backend for reliable recovery.

How does idempotency work for distributed task execution?

Idempotency ensures exactly-once execution semantics through an IdempotentExecutor that enforces claim-execute-store patterns, preventing duplicate task processing across distributed workers even during retries or crashes.

Do I need a separate queue database to move from single-process SQLite to multi-worker execution?

No, progressive infrastructure levels let you move from in-process SQLite (Level 0) to shared database persistence (Level 1) to multi-worker task queues (Level 2) using environment variables like KAILASH_DATABASE_URL and optional KAILASH_QUEUE_URL.