Emil Shanaty
|
1314314567
|
feat: conformance test runner + protocol fixes
- conformance.py: declarative scenario runner (subset matcher, $kind/$gt/
$enum/$required assertions, call_id/session_id echo checks), reference
bridge, CLI entry (python -m aicc.conformance)
- bridge.py: protocol version check before parsing (protocol_mismatch),
session expiry handling (session_expired), malformed tool_call ->
invalid_input, emit_event() for async events
- client.py: Self return type
- in_process.py: drain bridge event queue after response (event delivery),
Self return type
- websocket.py: Self return type, best-effort shutdown
- tests: 14 passing (incl. conformance scenarios, 9/9 core scenarios)
- ruff: all checks pass
|
2026-08-08 03:27:14 +03:00 |
|
Emil Shanaty
|
0cfb4277b5
|
aicc-py 0.1.0: initial SDK
- protocol.py: pydantic models for all AICC message types (envelope,
session_init, tool_call, tool_result, event, error, heartbeat)
- bridge.py: Bridge with @bridge.tool registration, capability checks,
session management, serve_forever
- client.py: AICCClient with single background reader (safe on
concurrent transports like WebSocket), call_tool, events, manifest
- tool.py: @tool decorator with schema generation from type hints
- schema.py: JSON Schema generation (str/int/float/bool, list, dict,
Optional, pydantic models)
- transport: Transport protocol, InProcessTransport, WebSocket client+server
- tests: 12 passing (integration, schema, websocket roundtrip)
- examples: bridge_minimal.py + agent_minimal.py (verified end-to-end)
0.1.0
|
2026-08-08 03:10:35 +03:00 |
|