solution-architect

Guides implementation of event-driven distributed processes using Saga, Process Manager, and Outbox patterns.

5|Updated Sep 9, 2017
One-click install
npx skills add https://github.com/hpcsc/dotfiles --skill solution-architect-hpcsc
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: solution-architect
Source: https://github.com/hpcsc/dotfiles/tree/main/link/common/claude/.claude/skills/solution-architect
Command: npx skills add https://github.com/hpcsc/dotfiles --skill solution-architect-hpcsc

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Distributed transactions across services are fragile and hard to scale. This Skill provides architectural guidance for replacing them with local transactions plus events, so each step in a distributed process stays independently retryable and compensatable. ## Core Features & Use Cases - Pattern Selection: Choose between Saga (stateless, simple workflows), Process Manager (stateful, complex multi-step decisions), and Choreography (decentralized, no coordinator) based on your workflow shape. - Implementation Checklist: Verify local transaction scope, compensation actions, internal vs external event separation, retry policies, and dead letter queues before shipping. - Anti-Pattern Detection: Identify distributed transactions, missing compensation, synchronous service-to-service calls, fire-and-forget messaging, and god process managers. - Use Case: When building an order fulfillment flow spanning payment, inventory, and shipping services, use this Skill to structure each step as a local transaction with events and defined compensation for failures. ## Quick Start Ask the solution-architect skill to help design a saga for an order workflow that spans payment, inventory, and shipping services.

Frequently Asked Questions about solution-architect

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

FAQPage Schema
How do I replace distributed transactions in microservices?▼

Replace distributed transactions with local transactions plus events, where each step is independently retryable and compensatable. Use the Saga pattern for simple workflows or a Process Manager for complex stateful decisions.

Saga vs Process Manager: which pattern should I use?▼

Use Saga for simple, mostly linear workflows since it is stateless and covers most cases. Use a Process Manager when the workflow involves complex multi-step decisions that require tracking state across steps.

What is the Outbox pattern in event-driven architecture?▼

The Outbox pattern ensures reliable event delivery by storing events in a local database table within the same transaction as the state change, then publishing them asynchronously. This avoids fire-and-forget publishing that can lose events.

When should I use choreography instead of orchestration?▼

Use choreography when you want a decentralized design with no central coordinator and services react to events independently. Avoid it when the workflow needs centralized decision logic, which suits a Process Manager better.

What are common event-driven architecture anti-patterns?▼

Key anti-patterns include attempting ACID transactions across services, missing compensation for failures, synchronous service-to-service calls, unreliable fire-and-forget messaging, and concentrating all logic in a god process manager.