d3816a29fa
- Add DI container (src/services/) with AgentExecutionService, ConfigLoaderService, and ExploitationCheckerService — pure domain logic with no Temporal dependencies - Introduce Result<T, E> type and ErrorCode enum for code-based error classification in classifyErrorForTemporal, replacing scattered string matching - Consolidate billing/spending cap detection into utils/billing-detection.ts with shared pattern lists across message-handlers, claude-executor, and error-handling - Extract LogStream abstraction for append-only logging with backpressure, used by both AgentLogger and WorkflowLogger - Simplify activities.ts from inline lifecycle logic to thin wrappers delegating to services, with heartbeat and error classification - Expand config-parser with human-readable AJV errors, security validation, and rule type-specific checks
21 lines
806 B
TypeScript
21 lines
806 B
TypeScript
// Copyright (C) 2025 Keygraph, Inc.
|
|
//
|
|
// This program is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU Affero General Public License version 3
|
|
// as published by the Free Software Foundation.
|
|
|
|
/**
|
|
* Services Module
|
|
*
|
|
* Exports DI container and service classes for Shannon agent execution.
|
|
* Services are pure domain logic with no Temporal dependencies.
|
|
*/
|
|
|
|
export { Container, getOrCreateContainer, removeContainer } from './container.js';
|
|
export type { ContainerDependencies } from './container.js';
|
|
|
|
export { ConfigLoaderService } from './config-loader.js';
|
|
export { ExploitationCheckerService } from './exploitation-checker.js';
|
|
export { AgentExecutionService } from './agent-execution.js';
|
|
export type { AgentExecutionInput } from './agent-execution.js';
|