Skip to content

v2.7.0 — AiNative domain sub-agents

Choose a tag to compare

@mabou7agar mabou7agar released this 08 Jun 13:43
· 23 commits to master since this release
d0c79e4

Features

  • AiNative domain sub-agents ('handler' => 'ai_native', AiNativeSubAgentHandler): a true domain agent that runs the full AiNative planner (NL → tool call with parameters, guards, confirmation) scoped to only its declared tools — e.g. an "invoice agent" that answers "how much has X spent" by planning an aggregate_data call itself. (#52)

Fixes / stability

  • Convergence safety net: when the planner runs a tool successfully but fails to emit a final answer (loops, exhausts its step budget), the handler now surfaces the last successful tool result instead of dead-ending on "I need more information." Genuine asks (carrying requiredInputs) pass through untouched. (#53)
  • public-model scope: data_query / aggregate_data now honor 'public' => true when applying scope, not only in the access block — a public model is no longer silently user/workspace/tenant-scoped (which could zero out rows the caller doesn't "own"). (#53)

⚠️ Behavior change

If you have a 'public' model with a user_id / workspace_id / tenant_id column that relied on the previous implicit scoping, it is now unscoped — matching the documented meaning of 'public' => true.

Full suite green: 1899 tests.