pub struct EmitConfig {
pub kind: EmitKind,
pub watermark_path: Option<String>,
}Expand description
Issue #246 — emit: manifest block for jobs whose stdout is
NDJSON observability events (one ObsEvent per line). Parallel
to inventory: but for the append-only timeline pipeline; see
Manifest::emit for the full contract.
Fields§
§kind: EmitKindWhat kind of payload the agent should expect on stdout. Only
events is defined today (parses each non-empty line as
ObsEvent and publishes on obs.<pc_id>); future variants
(e.g. metrics streams, structured trace events) plug in here.
watermark_path: Option<String>Operator hint for where the script keeps its own state — the
watermark file the PowerShell / sh body reads + writes
between runs so it only emits NEW events since the last
poll. The agent doesn’t read this; it’s documentation that
the SPA (and kanade job edit) can surface to operators
reviewing the manifest. Optional; the script is allowed to
keep state anywhere (registry, env, etc.) — the field’s
presence makes the convention discoverable.
Trait Implementations§
Source§impl Clone for EmitConfig
impl Clone for EmitConfig
Source§fn clone(&self) -> EmitConfig
fn clone(&self) -> EmitConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EmitConfig
impl Debug for EmitConfig
Source§impl<'de> Deserialize<'de> for EmitConfig
impl<'de> Deserialize<'de> for EmitConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for EmitConfig
impl JsonSchema for EmitConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more