Releases: aiperceivable/apcore
Releases · aiperceivable/apcore
Release 0.4.0 (2026-02-20)
Added
Protocol Specification
- Streaming Support — Formalized
ModuleAnnotations.streamingandExecutor.stream()behavior in protocol specification - Shallow Merge for Streaming — Algorithm for accumulating streaming chunks for output validation and post-processing
Release 0.3.0 (2026-02-20)
Added
Protocol Specification
- ErrorCodes Catalog — Standardized error code constants (replaces hardcoded strings)
- ContextFactory Protocol — Interface for creating Context from platform-specific requests
- Registry Constants — Standardized module ID patterns and event types
- Comprehensive Schema System — Formalized schema loading, validation, and multi-profile export (MCP, OpenAI, Anthropic) requirements
Release 0.2.0 (2026-02-16)
Changed
Protocol Specification
- Module ID Validation — Strengthened pattern to
^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)*$(lowercase, digits, underscores, dots; no hyphens) - Registry Event Constants — Standardized event names for module registration lifecycle
Release 0.1.0 (2026-01-01)
Initial Release
Added
Core Framework
- Schema-driven modules - Define modules with Pydantic input/output schemas and automatic validation
- @module decorator - Zero-boilerplate decorator to turn functions into schema-aware modules
- Executor - 10-step execution pipeline with comprehensive safety and security checks
- Registry - Module registration and discovery system with metadata support
Security & Safety
- Access Control (ACL) - Pattern-based, first-match-wins rule system with wildcard support
- Call depth limits - Prevent infinite recursion and stack overflow
- Circular call detection - Detect and prevent circular module calls
- Frequency throttling - Rate limit module execution
- Timeout support - Configure execution timeouts per module
Middleware System
- Composable pipeline - Before/after hooks for request/response processing
- Error recovery - Graceful error handling and recovery in middleware chain
- LoggingMiddleware - Structured logging for all module calls
- TracingMiddleware - Distributed tracing with span support for observability
Bindings & Configuration
- YAML bindings - Register modules declaratively without modifying source code
- Configuration system - Centralized configuration management
- Environment support - Environment-based configuration override
Observability
- Tracing - Span-based distributed tracing integration
- Metrics - Built-in metrics collection for execution monitoring
- Context logging - Structured logging with execution context propagation
Async Support
- Sync/Async modules - Seamless support for both synchronous and asynchronous execution
- Async executor - Non-blocking execution for async-first applications
Developer Experience
- Type safety - Full type annotations across the framework
- Comprehensive tests - 90%+ test coverage with unit and integration tests
- Documentation - Quick start guide, examples, and API documentation
- Examples - Sample modules demonstrating decorator-based and class-based patterns