Skip to content

0.5.0

Choose a tag to compare

@dgenio dgenio released this 17 May 07:22
· 232 commits to main since this release
1f51a16

What's Changed

Added

  • BuildStats diagnostic reporting (#106) — \BuildStats.report()\ and \BuildStats.report_dict()\ for rich diagnostic output with phase, budget, candidate counts, and per-section token breakdown.
  • \contextweaver stats\ CLI subcommand (#106) — renders BuildStats reports from ingested session JSON.
  • RouteResult.explanation() (#226) — paste-friendly Markdown rationale of routing decisions with top-k tables, confidence gaps, and context hints.
  • JSON Schemas + drift gate (#225) — six committed schemas for catalog, choice_card, result_envelope, route_trace, build_stats, and graph_manifest with \make schemas-check\ CI gate.
  • OpenTelemetry GenAI semantic conventions (#224) — emit \invoke_agent\ and \execute_tool\ spans with stable \gen_ai.*\ attributes.
  • Provider-message ingestion adapters (#194, #219, #222) — OpenAI, Anthropic, and Gemini message decoders/encoders for 5-line drop-in adoption.
  • Quickstart adoption guide (#220) — \docs/quickstart.md\ leads with existing-chat-history snippets.
  • Byte-stable choice card ordering (#218) — formalized (-score, +id)\ contract with regression tests and prompt-caching docs.
  • Context engineering positioning (#217) — new landing page framing in \docs/index.md\ and \docs/architecture.md.

Changed (breaking)

  • CLI: argparse → Typer + Rich (#221) — \ yper>=0.9\ and
    ich>=13.0\ move to core (from [cli]\ extra). All seven subcommands keep flag names; new \stats\ subcommand added. Exit code 2 (Typer convention) when run without subcommand.
  • \ChoiceCard.kind\ tightened — now \Literal['tool', 'agent', 'skill', 'internal']\ with schema validation; size bounds enforced at construction.
  • OpenTelemetry API floor bumped — \opentelemetry-api>=1.27\ for GenAI semantic conventions.

Removed

  • Old OTel span names — \contextweaver.context.build\ and \contextweaver.routing.route\ replaced by \invoke_agent\ and \execute_tool.
  • Old OTel metric name — \contextweaver.tokens.used\ renamed to \gen_ai.client.token.usage.

Full changelog: https://github.com/dgenio/contextweaver/blob/main/CHANGELOG.md