fix(runtime-e2e): verify unknown default + drop stale merge-status note (#2912)#219
Merged
Merged
Conversation
…te (#2912) axonflow-enterprise#2953 (caller_name) has merged and shipped in platform v9.11.0; it folded in #2903, which changed the fallback default written to policy_details.caller_name when neither caller_name nor tool_type is supplied from "claude_code" to "unknown" (an unidentified caller must not be silently attributed to a specific client). - runtime-e2e/caller_name_audit/test.py: add a third real-stack scenario asserting the neither-supplied case resolves to "unknown", not "claude_code". Verified against a freshly built axonflow-enterprise main (commit 7a5984ec7+, platform v9.11.0) — confirmed via direct platform inspection (audit_logs.policy_details) and through this SDK's own audit_tool_call before landing the assertion. - runtime-e2e/caller_name_audit/README.md: replace the stale "#2953 is an open PR, not yet merged" prerequisite note (accurate when PR #218 merged, no longer true) with the current v9.11.0 platform requirement; document the third scenario. No axonflow SDK code changes -- caller_name/tool_type were already both independently settable, so the SDK needed no "dual-send" cutover. Signed-off-by: Gregory Zak <gzak@getaxonflow.com>
6 tasks
Contributor
Author
|
R3 review: clean, no findings. Independently re-ran the runtime-e2e test against the real local v9.11.0 stack — all 3 scenarios (caller_name, legacy tool_type fallback, neither-supplied → "unknown") genuinely pass. CI green. Ready to merge. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #218 (merged). axonflow-enterprise#2953 (
caller_name) has since merged toaxonflow-enterprisemain and shipped in platform v9.11.0. That merge also folded in #2903, which changed the fallback default written topolicy_details.caller_namewhen neithercaller_namenortool_typeis supplied from"claude_code"to"unknown"— an unidentified caller must never be silently attributed to a specific client.runtime-e2e/caller_name_audit/test.py— adds a third real-stack scenario: neither field supplied →policy_details.caller_name == "unknown"(not"claude_code").runtime-e2e/caller_name_audit/README.md— replaces the stale "axonflow-enterprise#2953 is an open PR, not yet merged" prerequisite note (true when feat(client): add caller_name to audit_tool_call (#2912) #218 merged, no longer true) with the current v9.11.0 platform requirement, and documents the third scenario.No SDK code changes.
caller_nameandtool_typewere already independently settable fields onAuditToolCallRequest(see #218), so unlike the plugin repos (codex-plugin#82, cursor-plugin#83, openclaw-plugin#156) this SDK never needed a "dual-send" cutover — callers could already send both together, and the existing unit testtest_caller_name_and_tool_type_togetheralready covers it.Implements getaxonflow/axonflow-enterprise#2912, sub-issue of epic #2905.
Test plan
runtime-e2e/caller_name_audit/test.pyrerun against a freshly builtaxonflow-enterprisemain (commit7a5984ec7+, platform v9.11.0,docker compose buildfrom source, not a stale/cached image) — all three scenarios pass:audit_logs.policy_detailsin Postgres, and a raw curl against/api/v1/audit/tool-call+/api/v1/audit/tenant/{id}) before landing the SDK-level assertion.1060 passed, 29 skipped(coverage 82.74%, threshold 75%).scripts/lint-no-mocks-in-runtime-e2e.sh— clean.ruff check— clean on touched files.