SLO-as-code has made per-service} reliability declarative, but user experience is defined by journeys whose reliability is an emergent property of microservice topology, routing, redundancy, timeouts/fallbacks, shared failure domains, and tail amplification. As a result, journey objectives (e.g., "checkout p99 < 400 ms") are often maintained outside code and drift as the system evolves, forcing teams to either miss user expectations or over-provision and gate releases with ad-hoc heuristics. We propose Emergence-as-Code (EmaC), a vision for making journey reliability computable and governable via intent plus evidence. An EmaC spec declares journey intent (objective, control-flow operators, allowed actions) and binds it to atomic SLOs and telemetry. A runtime inference component consumes operational artifacts (e.g., tracing and traffic configuration) to synthesize a candidate journey model with provenance and confidence. From the last accepted model, the EmaC compiler/controller derives bounded journey SLOs and budgets under explicit correlation assumptions (optimistic independence vs. pessimistic shared fate), and emits control-plane artifacts (burn-rate alerts, rollout gates, action guards) that are reviewable in a Git workflow. An anonymized artifact repository provides a runnable example specification and generated outputs.
翻译:SLO即代码已使各服务的可靠性声明化,但用户体验由服务链路定义,其可靠性是微服务拓扑结构、路由机制、冗余设计、超时/熔断策略、共享故障域及尾部延迟放大效应共同作用的涌现属性。因此,链路级目标(如“结算流程p99延迟<400毫秒”)常游离于代码体系之外,并随系统演进发生漂移,迫使团队要么无法满足用户预期,要么过度配置资源并通过临时启发的经验法则来管控发布流程。本文提出涌现即代码(EmaC)愿景,旨在通过意图声明与证据验证使链路可靠性可计算、可治理。EmaC规范声明链路意图(目标、控制流算子、允许操作)并将其与原子化SLO及遥测数据绑定。运行时推理组件通过消费运维工件(如链路追踪与流量配置)合成带有溯源信息和置信度的候选链路模型。基于最新采纳的模型,EmaC编译器/控制器在显式相关性假设(乐观独立性与悲观共命运)下推导出有界的链路SLO与预算分配,并生成可通过Git工作流审查的控制平面工件(燃尽告警、发布门控、操作防护)。匿名化工件仓库提供了可运行的规范示例及生成输出。