Skip to main content

Crate wist_api

Crate wist_api 

Source
Expand description

Cross-process agent-seam messages for the wist control plane (gateway ↔ agentd).

A seam is a runtime coupling point between two independently deployed processes ({route, request body, response body, owner, compat, api_version}). This crate owns the wire messages of the agent-facing seams so gateway and agentd use a single definition instead of keeping a copy each. (The center-facing seams — gateway/register, gateway/status, … — are generated into wist-control, not owned here.)

Each module is one seam topic and maps to a route: enrollment (agent/enroll, agent/credentials:renew), status (agent/status), uplink (agent/uplink:poll), work (agent/work:*), action_plan (agent/action-plan), action_result (agent/action-results), facts (agent/facts), discovery_policies (agent/discovery-policies:poll).

Seam messages reference domain types that are shared by more than one seam (HostProfile, CredentialBundle, AgentIdentity, …). Those live in wist-contracts — the common base of every participant — and are re-exported here so callers can pull a whole seam from one place. wist-contracts keeps data-plane / internal objects only.

Modules§

action_plan
agent/action-plan seam(gateway → agentd,动作下发 + 回执)的报文。
action_result
agent/action-results seam(agentd → gateway,动作结果上报 + 回执)的报文。
discovery_policies
agent/discovery-policies:poll seam(agentd → gateway,拉取发现方向策略表)的报文。
enrollment
agent/enroll 与 agent/credentials:renew 两条 edge seam 的报文。
facts
agent/facts seam(agentd → gateway,事实摘要上报 + 回执)的报文。
status
agent/status seam(edge seam B:gateway ↔ agentd)的报文。
uplink
agent/uplink:poll seam 报文:PollAgentUplink(拉取)与 AgentUplinkGrant(下发)。
work
agent/work:* seam 报文(拉取授权快照 PollWork/WorkGrant、确认 AckWork/WorkAccepted、 上报执行结果 ReportWorkResult/WorkResultAccepted)。