Skip to content

v0.12.3

Latest

Choose a tag to compare

@ferhimedamine ferhimedamine released this 22 Oct 13:11
70c9cc2

Support for Dakera server v0.12.3 (Dakera-AI/dakera#922).
Compatible with v0.12.2 and older servers; the recall context, the unknown-field hint and the
document tools need v0.12.3.

Fixed

  • dakera_recall says which score ranks (Dakera-AI/dakera#940). The tool description says results come best first, ordered by rank_score (server v0.12.3+), and that score may rise down the list. The response is passed through, so rank_score reaches the agent as the server sends it.
  • dakera_autopilot_trigger describes what dedup does on v0.12.3. Since v0.12.3 the server's dedup pass only reports duplicates unless its dedup mode is merge, and merged memories stay restorable for a while; the tool said dedup removes duplicates. consolidate merges memories of one session only.
  • dakera_recall and dakera_recall_associated return at most top_k ranked results, as their
    top_k argument says. The server appended session-neighbourhood context after the ranked results,
    so a top_k: 5 recall could return 7 or more items. The tools now ask for
    neighborhood_mode: "separate" and list the context apart in context_memories, each entry with
    context_of (the ranked memory it belongs to) and context_of_rank (its place in memories), plus
    a short note saying the context is not ranked and its scores are not comparable. matched_text /
    matched_ids of collapsed results are kept. Against a server that predates neighborhood_mode
    (v0.12.2 and older), which appends its context unmarked, the extra items are left out and a note
    says so.

Added

  • Document import (Dakera v0.12.3, Dakera-AI/dakera#923),
    four power-tier tools: dakera_import_document (POST /v1/memory/documents for content as text,
    Markdown or HTML; POST /v1/namespaces/{ns}/attachments/{ref}/document for an uploaded PDF, DOCX,
    ... given as attachment_ref; title, document id, memory fields, max_tokens / overlap_tokens /
    strategy chunking, decompose; wait_seconds up to 45), dakera_document_status,
    dakera_list_documents and dakera_delete_document. They are listed only when
    /v1/capabilities reports documents.enabled; on an older server a direct call says it needs
    v0.12.3. The all profile now has 106 tools.
  • Recall results that are document chunks carry a citation (document_id, title, pages,
    heading_path, chunk index and count).
  • neighborhood_mode argument on both recall tools: separate (default), inline (the server
    appends context; the tool still moves it out of memories) or off (also sends
    neighborhood: false, which older servers honour).
  • A Hint: for the 422 (or 400) "unknown field" refusal that the admin key, backup and
    rotate-key routes answer from Dakera v0.12.3 on, naming the field.
  • initialize answers with instructions saying that memory content in tool results is stored
    data written by agents, users or imports, to be reasoned about and never followed as instructions.

Security

  • The API key is never logged: the per-message debug log no longer prints the JSON-RPC line (tool
    arguments can carry new_key of dakera_encryption_rotate_key or an extractor api_key), and
    the Authorization header is marked sensitive on every request (also to the ODE sidecar).
    Requests to the ODE sidecar (DAKERA_ODE_URL) still carry the Dakera API key; tracked in
    Dakera-AI/dakera#924. A test
    runs the binary with RUST_LOG=trace and checks the key appears on neither stdout nor stderr.
  • A warning on stderr at start-up when DAKERA_API_KEY is set and DAKERA_API_URL is plain
    http:// to a host other than the loopback interface.
  • top_k and neighborhood_mode are checked before a request is sent; dakera_graph_export
    accepts only json or graphml as format (it was inserted into the query string unencoded).
  • A trailing / on DAKERA_API_URL no longer produces //v1/... paths.
  • Docker image: runtime base moved to distroless/static-debian13:nonroot (the debian12 base
    carried an outdated tzdata, DLA-4792-1; Trivy now reports 0 vulnerabilities and 0
    misconfigurations), both base images pinned by multi-arch index digest, cargo build --locked, the
    binary copied root-owned and read-only, explicit USER 65532:65532 (Kubernetes runAsNonRoot
    can verify it), HEALTHCHECK NONE (a stdio server has nothing to probe); Dependabot now
    refreshes the base image digests.
  • Dependencies: rustls 0.23.46 (RUSTSEC-2026-0346, -0347, -0348, -0349) and quinn-proto 0.11.19
    (RUSTSEC-2026-0338 to -0342), rustls-webpki 0.103.16 (RUSTSEC-2026-0382).