Releases: aiperceivable/apcore
Releases · aiperceivable/apcore
Release 0.14.0 (2026-03-24)
Fixed
Specification Documents
docs/features/event-system.md— Fixed severity levels fromwarning/criticaltowarn/fatal, aligning with PROTOCOL_SPEC §10.2docs/features/core-executor.md— Fixed Identity description: removed incorrectpermissionsfield, corrected toid,type,roles,attrsper PROTOCOL_SPEC §5.7docs/features/core-executor.md— Added missingApprovalPendingErrorto Approval Gate description per PROTOCOL_SPEC §7.4docs/features/middleware-system.md— Addedretry.pyto Key Files table (was described in Components but missing from file list)docs/features/observability.md— Added concrete metric names (apcore_module_calls_total,apcore_module_errors_total,apcore_module_duration_seconds) to convenience method documentation
Protocol Specification
- Fixed duplicate
### 10.5section numbering — renumbered Sensitive Data Redaction to §10.6, Sampling Strategy to §10.7, Span Naming Convention to §10.8 - Fixed
### 8.1.1misnumbered under §9.1 — corrected to §9.1.1 - Fixed
### 10.8.xmisnumbered under §11.8 — corrected to §11.8.1–§11.8.4 - Fixed middleware priority model contradiction between §11.2 (explicit 0-1000) and §12 (registration order) — §12 now aligns with §11.2
- Fixed
on_errorexamples in README.md and concepts.md — changedraise errorto correct return-based contract (return None/return dict) - Updated "Last Updated" date to 2026-03-24
Scope Document
- Added Approval System (§7) and Event System to "Core Protocol Includes" list in SCOPE.md
README
- Added AI-Perceivable brand definition block to README header
- Added "Perceived → Understood → Executed" progression table to "Why AI-Perceivable?" section
Ecosystem
§5.13 Display Overlay (specified in v0.13.0) is now implemented across the official adapter stack:
| Package | Version | What was implemented |
|---|---|---|
apcore-toolkit |
0.4.0 | DisplayResolver — §5.13 resolve priority chain, MCP alias sanitization/64-char limit, CLI alias validation, suggested_alias fallback, binding_path file/directory loading |
apcore-cli |
0.3.0 | CLI command routing from metadata["display"]["cli"]["alias"]; descriptor cache; JSON output reads display overlay |
apcore-mcp |
0.11.0 | MCP tool name and description from metadata["display"]["mcp"]; guidance appended to tool description |
apcore-a2a |
0.3.0 | A2A skill id/description/tags from metadata["display"]["a2a"]; removed dead _build_extensions() |
fastapi-apcore |
0.4.0 | binding_path parameter on create_cli() / create_mcp_server(); DeprecationWarning for simplify_ids=True |
- §5.14 Convention Module Discovery — new optional protocol capability for zero-decorator module registration via
commands/directory convention.
Release 0.13.0 (2026-03-12)
Added
Protocol Specification
- Caching annotations (§4.4) —
cacheable,cache_ttl,cache_key_fieldsannotation fields for AI-aware caching decisions - Pagination annotations (§4.4) —
paginated,pagination_style(cursor/offset/page) for paginated result handling - AI Metadata Conventions (§4.6) — 13 standardized
x-metadata keys across 4 categories: Intent, Planning, Performance/Cost, Trust/Verification sunset_date(§5.2) — ISO 8601 date field for module deprecation lifecycleon_suspend()/on_resume()(§5.6, §12.7.3) — Optional lifecycle hooks for state preservation during hot-reload- Hot Reload with State Migration (§12.7.3) — New section with algorithm, constraints, and Python example
- Ecosystem documentation — Added apcore-mcp, apcore-a2a, and apcore-testing to README and SCOPE
Schema
module-meta.schema.json— Addedstreaming,cacheable,cache_ttl,cache_key_fields,paginated,pagination_style,sunset_datedefinitions
Changed
- Rebranded from "universal module development framework" to "AI-Perceivable module standard" with three-tier messaging (slogan/subtitle/full definition)
- SCOPE.md — Expanded boundary decisions from 17 to 26 rows; updated requirements wording from "The framework" to "Implementations"
- Section renumbering — §12.7.3–12.7.8 renumbered after hot-reload insertion
- Lifecycle table (§12.7.1) — Reordered to show
on_resumeafteron_load, with note clarifying old/new instance distinction
Fixed
- Cross-references — Fixed 10+ stale §11.7.x and §12.7.x references across architecture, registry-api, algorithms, and context-object docs
- Metadata key consistency — Aligned
x-max-latency-msdescription between README and PROTOCOL_SPEC
Release 0.12.0 (2026-03-10)
Added
Protocol Specification (v1.5.0-draft)
- Error catalog expanded (§8.2) — Added
MODULE_DISABLED,EXECUTION_CANCELLED,RELOAD_FAILEDerror codes with retryability classification and error hierarchy entries - UsageCollector formalized (§10.4) — Added usage tracking specification for
UsageCollectorandUsageMiddlewarebackingsystem.usage.*modules
Conformance
- Shared conformance fixtures (
conformance/fixtures/) — 7 JSON fixture files for cross-language testing:pattern_matching,specificity,normalize_id,call_chain,error_codes,version_negotiation,acl_evaluation
Changed
Protocol Specification
- Context.child() naming (§12.7.2) — Standardized
derive()→child()to match SDK implementations - Forward-declared errors resolved —
GENERAL_NOT_IMPLEMENTEDandDEPENDENCY_NOT_FOUNDnow fully implemented in both SDKs
Documentation
- Cross-reference links — Added links between API docs and feature docs (executor-api.md, context-object.md)
- Conformance known deviations — Updated status of error code implementations
Fixed
- CHANGELOG count corrections — System modules 10→9, APCore client methods 19→17
- Phantom entry removed — TypeScript
batchProcessingannotation (never implemented)
Release 0.11.0 (2026-03-09)
Added
Documentation — New Files
- APCore Client API (
docs/api/client-api.md) — Full API reference for the unifiedAPCoreclient covering 17 public methods:call,call_async,stream,validate,module,register,discover,list_modules,describe,use,use_before,use_after,remove,on,off,disable,enable, plusevents/registry/executorproperties and globalapcore.*entry points - Event System (
docs/features/event-system.md) —EventEmitter,ApCoreEvent,EventSubscriberprotocol,WebhookSubscriber(retry strategy),A2ASubscriber(auth modes), subscriber type factory registry, event types table, and YAML configuration reference - System Modules (
docs/features/system-modules.md) — Complete reference for 9 built-insystem.*modules with input/output schemas:system.health.summary,system.health.module,system.manifest.module,system.manifest.full,system.usage.summary,system.usage.module,system.control.update_config,system.control.reload_module,system.control.toggle_feature; plusregister_sys_modules()setup guide and YAML configuration
Documentation — Updated Files
- Observability features —
ErrorHistory,UsageCollector,PlatformNotifyMiddlewaredocumented - Middleware guide — Built-in
RetryMiddleware+RetryConfigreference added - Schema system —
SchemaStrategyandExportProfileenums documented
Changed
Documentation — Updated Files
docs/getting-started.md— Added §8 Global Entry Points (16apcore.*module-level functions) and §9 System Modules quick start with health/usage/manifest examplesdocs/api/executor-api.md—validate()return type updated fromValidationResulttoPreflightResultwith 6-check breakdown andrequires_approvalflag;call()/call_async()/stream()signatures updated withversion_hintparameter; addedModuleDisabledError,ModuleTimeoutError,ReloadFailedError,FeatureNotImplementedError,DependencyNotFoundErrorto error types; timeout section rewritten for dual-timeout model with cooperative cancellation (CancelToken+ 5s grace period)docs/api/registry-api.md— Addeddisable()/enable()module toggle,safe_unregister()with cooperative drain (Algorithm A21),acquire()context manager,is_draining(),describe()for AI/LLM tool discovery,negotiate_version()(Algorithm A14)docs/features/observability.md— Added three subsystems:ErrorHistory(ring buffer with deduplication,ErrorEntrydataclass),UsageCollector(hourly bucketed storage, trend computation,UsageMiddleware),PlatformNotifyMiddleware(threshold-based alerting with hysteresis)docs/guides/middleware.md— Replaced hand-writtenRetryMiddlewareexample with built-inRetryMiddleware+RetryConfigreference (exponential/fixed backoff, jitter, retryable-only); added §5.5–5.7 cross-references forErrorHistoryMiddleware,UsageMiddleware,PlatformNotifyMiddlewaredocs/features/schema-system.md— AddedSchemaStrategyenum (yaml_first,native_first,yaml_only) andExportProfileenum (mcp,openai,anthropic,generic)docs/features/core-executor.md— Added dual-timeout model (global deadline + per-module), cooperative cancellation withCancelToken, deep merge for streaming (depth cap 32), error propagation viapropagate_error()(Algorithm A11),PreflightResultvalidationdocs/README.md— Addedclient-api.md,event-system.md,system-modules.mdto directory tree, API reference table, feature specifications table, and concept index
Release 0.10.0 (2026-03-07)
Added
Protocol Specification
- IDConverter implementation note (§12.2) — SDKs MAY implement as utility function instead of class
- MiddlewareManager split-method pattern (§12.2) — SDKs MAY use
execute_before/execute_after/execute_on_errorinstead of unifiedrun_chain() - Module.stream() optional method (§5.6) — Documented
stream()as optional method in Module interface for streaming support
Error Hierarchy
DependencyNotFoundError— New error class forDEPENDENCY_NOT_FOUNDcode (previously forward-declared)FeatureNotImplementedError(Python) /NotImplementedError(TypeScript) — New error class forGENERAL_NOT_IMPLEMENTEDcode (previously forward-declared)
Changed
- Executor pipeline docs — All references updated from "10-step" to "11-step" pipeline across README.md, docs/features/core-executor.md, docs/api/executor-api.md
- Context
loggerproperty — Upgraded from SHOULD to MUST in docs/api/context-object.md (both SDKs already provide it) - docs/api/module-interface.md — Added optional
stream()method documentation - **docs/getting-started.md
** — Rewritten to recommendAPCore` unified client as primary approach
Release 0.9.0 (2026-03-06)
Added
Protocol Specification
- Executor.validate() preflight (§12.2) —
[SHOULD]non-destructive preflight check through Steps 1–6 without invoking module code or middleware; newPreflightResult/PreflightCheckResulttypes with duck-typeValidationResultcompatibility - §12.8 Executor.validate() Cross-Language Implementation Guide — error handling mapping, type mapping for Python/TypeScript/Go/Rust/Java/C/C++, schema library requirements, naming conventions
- Preflight Tests added to §12.4 Consistency Test Suite (7 test cases)
- Context optional extension fields —
cancel_token,services,redacted_inputswith serialization rules (§5.7) - New error codes —
CONFIG_NOT_FOUND,CONFIG_INVALID,SCHEMA_CIRCULAR_REF,BINDING_FILE_INVALID,MIDDLEWARE_CHAIN_ERROR,VERSION_INCOMPATIBLE,ERROR_CODE_COLLISION,CIRCULAR_DEPENDENCY,DEPENDENCY_NOT_FOUND(§8) - New error classes —
BindingFileInvalidError,MiddlewareChainError,VersionIncompatibleError,ErrorCodeCollisionErroradded to error hierarchy - AI error guidance fields —
retryable,ai_guidance,user_fixable,suggestionsfor improved LLM agent error handling - AI intent metadata keys (§4.6) —
x-when-to-use,x-when-not-to-use,x-common-mistakes,x-workflow-hintsconventions for LLM agents - TypeScript and C/C++ added to §12.6 Language-Specific Implementation Notes
Changed
PROTOCOL_SPEC.md— bumped to v1.4.0-draft- Executor pipeline renumbered from 10 steps (with Step 4.5) to clean 11 steps — Approval Gate is now Step 5, subsequent steps shifted +1
- §7.4, §7.9, streaming protocol references updated to match new 11-step numbering
- Executor.validate() preflight added to §12.3 cross-language requirements table
- Section cross-references fixed — §11.7→§12.7, §10.3→§11.3, §9.7→§10.7, §7→§8 (error code references)
- Retryability table updated with new error codes;
MIDDLEWARE_CHAIN_ERRORremoved from forward-declared list docs/api/context-object.md— added optional extension fields documentationdocs/api/executor-api.md— added AI error guidance fields and new error typesdocs/concepts.md— expanded AI collaboration and cognitive interface conceptsSCOPE.md— updated to reflect new features
Release 0.8.0 (2026-03-03)
Added
- AI Collaboration Lifecycle documentation: Integrated
description,metadata,requires_approval, andai_guidanceinto a unified narrative (Discovery, Strategy, Governance, Recovery). - New "Cognitive Interface" concept in
README.mdanddocs/concepts.md. - Intent-oriented design tips in
docs/guides/creating-modules.md. - Comprehensive multi-language "Getting Started" guide covering both Python and TypeScript side-by-side
- Multi-language support (side-by-side examples) in "Creating Modules" guide
- Unified documentation links across all implementation READMEs (
apcore-python,apcore-typescript) - TypeScript examples for Registry, Executor, and Module definition in core documentation
Changed
README.md— Updated Quick Start with multi-language tabs and links to the new Getting Started guide
Release 0.7.0 (2026-03-01)
Added
Protocol Specification
- Approval System (§7) — new section in
PROTOCOL_SPEC.mddefining theApprovalHandlerprotocol,ApprovalRequest/ApprovalResultdata types, Executor Step 4.5 integration, error types (APPROVAL_DENIED,APPROVAL_TIMEOUT,APPROVAL_PENDING), built-in handlers, protocol bridge handlers, phased implementation (Phase A sync, Phase B async), and conformance levels
Feature Documentation
docs/features/approval-system.md— full specification of the Approval System feature
Changed
PROTOCOL_SPEC.md— bumped to v1.3.0-draft; added "Recommended AI Intent Metadata Keys" (§4.6) outliningx-when-to-use,x-when-not-to-use,x-common-mistakes, andx-workflow-hintsconventions for LLM agents; updatedrequires_approvalannotation description to reference runtime enforcement; added approval error codes and error hierarchy; renumbered §7–§13 → §8–§14docs/api/executor-api.md— addedapproval_handlerconstructor parameter,ApprovalDeniedError/ApprovalTimeoutErrorto error types, Step 4.5 to execution flow and state machinedocs/api/module-interface.md— updatedrequires_approvalannotation description to reference Approval System and runtime enforcementdocs/features/core-executor.md— added Step 4.5 (Approval Gate) to the execution pipelinedocs/README.md— added Approval System to feature specifications table, directory tree, and concept index
Release 0.6.0 (2026-02-23)
Added
Protocol Specification
- Streaming execution protocol — new section in
PROTOCOL_SPEC.mddefining streaming execution model for long-running or real-time module outputs - Module ID constraints & naming conventions — formal rules for module identifiers added to the protocol spec
- SDK export requirements — specified required exports for conformant SDK implementations
- Module interface improvements — refined module interface contracts with streaming semantics
Feature Documentation
docs/features/acl-system.md— full specification of the Access Control List systemdocs/features/core-executor.md— detailed documentation of the execution pipelinedocs/features/decorator-bindings.md— guide on the@moduledecorator and binding mechanicsdocs/features/middleware-system.md— composable middleware pipeline specificationdocs/features/observability.md— tracing, metrics, and structured logging documentationdocs/features/registry-system.md— module registry and discovery system documentationdocs/features/schema-system.md— schema-driven module input/output validation documentation
CI/CD & Site
- GitHub Actions workflow (
.github/workflows/deploy-docs.yml) for automated documentation deployment - MkDocs configuration (
mkdocs.yml) for the documentation site
Changed
- README — enhanced with unified SDK explanation, TypeScript SDK implementation examples, and updated architecture overview
- SCOPE.md — updated to reflect current project scope and feature set
docs/concepts.md— rewritten with unified SDK explanation for multi-language contextdocs/architecture.md— updated to align with protocol spec changesdocs/api/— updatedcontext-object.md,executor-api.md,module-interface.md, andregistry-api.mdwith version-aligned contentdocs/spec/conformance.md— revised conformance requirements to match 0.2.0 protocol specdocs/guides/adapter-development.md— updated adapter development guidemkdocs.yml— navigation structure updated to include new feature pages
Removed
ROADMAP.md— removed; roadmap references updated across documentationdocs/guides/creating-modules-translated.md— removed translated guide from navigation
Release 0.5.0 (2026-02-22)
Added
Protocol Specification
- Level 2 Conformance (Phase 1) — Extension system, Async Task Management, and W3C Trace Context support added to protocol requirements
- Extension System (§12.2) — Unified extension point framework for pluggable components (discoverers, middleware, ACL, exporters)
- Async Task Management (§12.7.3) — Standardized lifecycle for background tasks (Pending, Running, Completed, Failed, Cancelled)
- Trace Context (§12.7.4) — W3C Trace Context (traceparent) support for distributed tracing propagation
- Async Middleware Protocol — Requirements for non-blocking middleware dispatch