40 virtual std::optional<InspectorControlSession>
41 open(std::chrono::milliseconds timeout) = 0;
45 virtual std::optional<InspectorControlSession>
46 open_until(std::chrono::steady_clock::time_point deadline) {
47 const auto now = std::chrono::steady_clock::now();
50 return open(std::chrono::ceil<std::chrono::milliseconds>(deadline - now));
66std::unique_ptr<InspectorControlSessionOpener>
68 std::filesystem::path client_executable,
69 std::optional<std::string> exact_instance_id = std::nullopt,
70 std::string legacy_profile =
"develop");
77 std::string params_json =
"{}",
78 std::chrono::milliseconds timeout = std::chrono::seconds(3));
85 std::chrono::milliseconds timeout = std::chrono::seconds(3));
99 std::string_view inventory_json,
100 std::optional<std::string_view> exact_instance_id = std::nullopt);
104 std::function<std::chrono::steady_clock::time_point()>;
109 std::string params_json, std::chrono::milliseconds timeout,
Injected enrollment/session boundary for canonical Inspector operations.
Definition control_inspector_client.hpp:36
virtual ~InspectorControlSessionOpener()=default
virtual std::optional< InspectorControlSession > open(std::chrono::milliseconds timeout)=0
virtual std::optional< InspectorControlSession > open_until(std::chrono::steady_clock::time_point deadline)
Deadline-aware entry point.
Definition control_inspector_client.hpp:46
Definition resource_counters.hpp:35
std::function< std::chrono::steady_clock::time_point()> InspectorControlClock
Definition control_inspector_client.hpp:103
std::optional< TraceControlInventorySelection > select_trace_control_instance(std::string_view inventory_json, std::optional< std::string_view > exact_instance_id=std::nullopt)
Internal pure seams for testing least-authority discovery and grant construction without a live insta...
InspectorClientResult request_control_inspector_with_clock(InspectorControlSessionOpener &opener, std::string method, std::string params_json, std::chrono::milliseconds timeout, InspectorControlClock clock)
Internal deterministic-clock seam for deadline contract tests.
std::string trace_control_grant_request_json(std::string_view instance_id)
Definition agent_context.hpp:7
InspectorClientResult request_control_inspector(InspectorControlSessionOpener &opener, std::string method, std::string params_json="{}", std::chrono::milliseconds timeout=std::chrono::seconds(3))
Execute one already-supported trace Inspector method through the canonical capability-control carrier...
std::filesystem::path installed_control_broker_executable(const std::filesystem::path &client_executable)
Resolve the peer-verification anchor for a broker installed beside a CLI or MCP client.
std::unique_ptr< InspectorControlSessionOpener > make_installed_inspector_control_session_opener(std::filesystem::path client_executable, std::optional< std::string > exact_instance_id=std::nullopt, std::string legacy_profile="develop")
Build the installed-process opener used by CLI and MCP compatibility adapters.
Definition control_identity.hpp:28
Definition control_grants.hpp:18
Definition control_identity.hpp:36
Typed outcome for a one-shot canonical control request.
Definition client.hpp:19
Exact selector for one canonical control registration generation.
Definition client.hpp:11
Authority material returned by an enrollment-aware client integration.
Definition control_inspector_client.hpp:23
std::string instance_generation
Definition control_inspector_client.hpp:28
ControlClientId client_id
Definition control_inspector_client.hpp:25
std::unique_ptr< ControlClientTransport > transport
Definition control_inspector_client.hpp:24
ControlGrantId grant_id
Definition control_inspector_client.hpp:27
ControlRegistrationId registration_id
Definition control_inspector_client.hpp:26
std::uint64_t expected_state_generation
Definition control_inspector_client.hpp:30
InspectorClientTarget target
Definition control_inspector_client.hpp:29
Definition control_inspector_client.hpp:89
std::string session_id
Definition control_inspector_client.hpp:93
std::string instance_id
Definition control_inspector_client.hpp:90
std::string registration_id
Definition control_inspector_client.hpp:91
std::string publication_id
Definition control_inspector_client.hpp:92