adk_web_gateway (erlang_adk v0.7.0)
View SourceProduction UI boundary for authenticated Phoenix/HTTP applications.
The gateway is deliberately not an HTTP server. A Phoenix LiveView (or another trusted boundary) authenticates a request, passes the resulting adk_jwt_policy identity here, and never accepts app/user identifiers from the browser. Agent runners are resolved from a server-owned immutable catalog. Long-running work remains in independently supervised adk_run processes; the gateway performs only short authorization/catalog lookups.
Summary
Functions
-spec ack(gen_server:server_ref(), map(), binary(), pid(), non_neg_integer()) -> ok | {error, term()}.
-spec cancel(gen_server:server_ref(), map(), binary()) -> ok | {error, term()}.
-spec child_spec(map()) -> supervisor:child_spec().
-spec list_agents(gen_server:server_ref(), map()) -> {ok, [map()]} | {error, term()}.
-spec resume(gen_server:server_ref(), map(), binary(), term()) -> {ok, adk_run:run_id()} | {error, term()}.
-spec start_link(map()) -> gen_server:start_ret().
-spec start_run(gen_server:server_ref(), map(), binary(), binary(), binary()) -> {ok, adk_run:run_id()} | {error, term()}.
-spec status(gen_server:server_ref(), map(), binary()) -> {ok, map()} | {error, term()}.
-spec subscribe_credit(gen_server:server_ref(), map(), binary(), pid(), non_neg_integer()) -> {ok, map()} | {error, term()}.
-spec unsubscribe(gen_server:server_ref(), map(), binary(), pid()) -> ok | {error, term()}.