Part of an ActiveAgent + actionagent dashboard functional review (multi-agent, adversarially verified). Severity: 🟡 Minor.
Configuration::LOCAL_ENDPOINT_PATH is "/active_agent/api/traces" and the README + class docstring tell self-hosters to point at https://your-app.example.com/active_agent/api/traces — a path no current dashboard mount serves (the actionagent engine ingests at <mount>/api/traces, default /activeagents/api/traces). Self-hosted telemetry silently 404s against the documented path.
Findings
LOCAL_ENDPOINT_PATH and the class docs point self-hosters at the stale /active_agent mount path
- Where:
lib/activeagents/telemetry/configuration.rb:23 · severity: minor · kind: drift · repo: activeagents-telemetry
- What breaks: Configuration declares LOCAL_ENDPOINT_PATH = "/active_agent/api/traces" (described as 'Path a mounted ActiveAgent::Dashboard::Engine serves traces on') and the class comment tells self-hosters to point at "https://your-app.example.com/active_agent/api/traces". The current dashboard engine is ActionAgent::Engine, mounted at "/activeagents" by its install generator, README, and dummy app — so a user following this gem's guidance POSTs to a path that 404s on a default install. The activeagent framework's own embedded telemetry already corrected its copy of the constant to "/activeagents/api/traces" and added mount resolution (lib/active_agent/telemetry/configuration.rb:22,61-64); the standalone telemetry gem is the side that is behind. The constant is defined but never read inside this gem, so the blast radius is documentation/guidance (and the engine's integration test, which references the framework's corrected copy).
- Evidence: activeagents-telemetry lib/activeagents/telemetry/configuration.rb:17 (doc example .../active_agent/api/traces), :23 (LOCAL_ENDPOINT_PATH = "/active_agent/api/traces"; grep shows no other reference in this gem). Current engine mount: actionagent/lib/generators/action_agent/install_generator.rb:89
route 'mount ActionAgent::Engine => "/activeagents"', actionagent/README.md:34, dummy host mounts /activeagents (live: POST http://localhost:3001/activeagents/api/traces returned 202). Corrected sibling: activeagent lib/active_agent/telemetry/configuration.rb:22 LOCAL_ENDPOINT_PATH = "/activeagents/api/traces".
- Suggested fix: In activeagents-telemetry: change LOCAL_ENDPOINT_PATH at lib/activeagents/telemetry/configuration.rb:23 to "/activeagents/api/traces", update the class-comment example at :17, and also fix README.md:62 which repeats the stale "/active_agent/api/traces" endpoint in the self-hosting instructions (the claim missed the README). Optionally note, as the framework copy does, that the path should match wherever the host actually mounted ActionAgent::Engine.
Verification
Each finding above was produced by a dedicated per-feature review agent, then confirmed by an independent adversarial verifier (all rated high-confidence; zero rejected in this set). File:line citations are against the current main/HEAD of each repo; many were reproduced live against a booted dashboard.
Configuration::LOCAL_ENDPOINT_PATHis"/active_agent/api/traces"and the README + class docstring tell self-hosters to point athttps://your-app.example.com/active_agent/api/traces— a path no current dashboard mount serves (the actionagent engine ingests at<mount>/api/traces, default/activeagents/api/traces). Self-hosted telemetry silently 404s against the documented path.Findings
LOCAL_ENDPOINT_PATH and the class docs point self-hosters at the stale /active_agent mount path
lib/activeagents/telemetry/configuration.rb:23· severity: minor · kind: drift · repo:activeagents-telemetryroute 'mount ActionAgent::Engine => "/activeagents"', actionagent/README.md:34, dummy host mounts /activeagents (live: POST http://localhost:3001/activeagents/api/traces returned 202). Corrected sibling: activeagent lib/active_agent/telemetry/configuration.rb:22 LOCAL_ENDPOINT_PATH = "/activeagents/api/traces".Verification
Each finding above was produced by a dedicated per-feature review agent, then confirmed by an independent adversarial verifier (all rated high-confidence; zero rejected in this set). File:line citations are against the current
main/HEAD of each repo; many were reproduced live against a booted dashboard.