Skip to content

Aphrodite/v0.9.5

Choose a tag to compare

@github-actions github-actions released this 22 Jun 07:17
· 17 commits to Current since this release
Aphrodite/v0.9.5
5f45d84

Aphrodite v0.9.5 💋 Plugin v1.62.63

Summary

Critical bug fixes from Python→Rust migration audit — hooks were no-ops,
context engine was broken, download.sh used wrong version, test assertion failed.

Changes

  • fix(hooks): Hook dispatch was no-op — all 5 hooks registered as lambda: None.
    Now dispatch to Rust dylib via aphrodite_hermes_call_hook with ctypes setup.
  • fix(context-engine): context_engine_pre_llm dispatched to tool registry
    but was missing from tools.rs → returned {"error": "unknown tool"} silently.
    Added handler that calls aphrodite::hooks::pre_llm_call.
  • fix(download.sh): Auto-detected version from plugin.yaml (1.62.62) but
    GitHub releases use crate version (0.9.4) → download 404. Now reads from
    crates/aphrodite/Cargo.toml first.
  • fix(test): test_version_is_semver failed — aphrodite_hermes_version()
    returns JSON {"version":"0.1.1"} but test checked starts_with("0.").
    Now parses JSON before assertion.
  • docs: Restored comprehensive README (867→847 lines) — deduped Migration
    section into Architecture.

Infrastructure

  • Build: ✅ cargo build --release
  • Tests: ✅ 6/6 aphrodite-hermes
  • Audit methodology: 9-step systematic approach documented in
    aphrodite-dev-workflow/references/codebase-audit-methodology.md

Methodology

Discovered via systematic 9-step audit:

  1. Git history scan (50 commits)
  2. Deleted file audit (git diff --diff-filter=D)
  3. Reference cross-check (rg for dangling refs)
  4. C ABI surface comparison (before/after extern fn list)
  5. Test execution (cargo test)
  6. Runtime code path analysis (trace hook→handler→dispatch)
  7. Cross-system version sync (Cargo.toml vs plugin.yaml vs badges)
  8. Script dry-run testing (bash download.sh)
  9. Dead code / orphan path detection (dispatch target existence)

Links