Supersedes the shipping pass in v0.7. v0.8 is the forward-looking brainstorming seed: where do Atmosphere's shipped primitives land against the real enterprise pain points documented in Dynatrace's The pulse of agentic AI in 2026 (N=919 enterprise leaders, Nov–Dec 2025, ≥$100M revenue), and what do we need to add to land the 2026-2027 enterprise story?
50% of surveyed enterprises have agentic projects in limited production, 44% broad departmental adoption, 23% enterprise-wide. Top three use cases: IT ops (70%), data processing (51%), cybersecurity (49%). 74% expect budgets to rise. Average current spend $2–5M per org; top ROI expected from IT ops (44%). Dynatrace's core thesis: observability must become the control plane — a deterministic-facts layer that anchors probabilistic model decisions across seven tiers (business → application → orchestration → agentic → model → RAG → infrastructure). 64% of orgs are building both autonomous and human-supervised agents; only 13% go pure-autonomous. 69% of agentic decisions are still verified by a human today.
| Criterion | % | Atmosphere status | Commit or module of record |
|---|---|---|---|
| Security & data privacy | 59% | ✅ Strong | Sandbox (Docker + NetworkPolicy), AgentIdentity.CredentialStore, DENY_ALL / REQUIRE_PRINCIPAL admin authorizers |
| Accuracy/reliability of outputs | 55% | 🟡 Partial | AiGuardrail SPI, StructuredOutputCapturingSession, LlmJudge eval — no default drift detector |
| Adequate monitoring + controls | 44% | ✅ Strong | OTel spans, Micrometer, typed TokenUsage, streaming-text budget, CoordinationJournal |
| Compliance with policies/regs | 43% | ✅ Strong | AgentIdentity audit log, admin endpoints, AiGateway choke point |
| Business-objective alignment / ROI | 41% | ❌ Gap | AiRequest.metadata() can carry keys but no convention, no standard correlations |
| Human oversight/review | 40% | ✅ Strong | @RequiresApproval, ApprovalStrategy.virtualThread, CheckpointStore.fork(), PermissionMode.PLAN |
| Scalability & performance | 38% | ✅ Strong | Virtual threads, Reactor Netty HTTP/3, WebTransport, backpressure invariants |
| Ethics / fairness / bias | 30% | ❌ Gap | Guardrail SPI exists but no default PII / toxic / sensitive impls |
Coverage: 6/8 strong, 1 partial, 2 gaps.
| Barrier | % | Atmosphere status |
|---|---|---|
| Security / privacy / compliance | 52% | ✅ Strong |
| Managing + monitoring at scale | 51% | ✅ Strong |
| Rules for autonomous-vs-approval | 45% | ✅ Direct hit (PermissionMode, @RequiresApproval) |
| Skilled-staff shortage | 44% | — (docs / tutorials / CLI templates help) |
| Visibility into agent decisions | 41% | 🟡 OTel + CoordinationJournal; no flow viewer |
| Monitoring perf/cost/compliance | 40% | ✅ AiGateway + TokenUsage + AiMetrics |
| Coordinating troubleshooting | 40% | 🟡 Admin UI aggregates; no unified incident flow |
| Diagnosing unexpected behavior | 39% | ❌ No anomaly detector |
| Tracing downstream impacts | 39% | 🟡 Trace IDs propagate; no business-event linkage |
Coverage: 5/9 strong, 3 partial, 1 gap.
| Mechanism | % | Atmosphere |
|---|---|---|
| Data quality checks | 50% | Guardrail SPI; no default DQ impl |
| Human review | 47% | ✅ @RequiresApproval + console tool-call cards |
| Drift / anomaly monitoring | 41% | ❌ No default |
| Security validations | 39% | ✅ |
| Consistency / regression tests | 37% | ✅ LlmJudge, StubAgentFleet, AbstractAgentRuntimeContractTest |
| Logs + traces | 27% | ✅ |
| Layer | Purpose | Atmosphere status |
|---|---|---|
| Business | Traceable outcomes | ❌ No standard metadata keys |
| Application | UX + tracing | ✅ OTel + streaming session spans |
| Orchestration | Advanced metrics & analysis | ✅ @Coordinator + AgentFleet + CoordinationJournal |
| Agentic | Agent-to-agent comms | ✅ ProtocolBridge (InMemory + MCP + A2A + AG-UI + gRPC), AgentResumeHandle |
| Model / LLM | Model integrity | ✅ AiGateway, TokenUsage, cache hints, AiGuardrail |
| RAG / vector DB | Data retrieval + semantic analysis | ✅ atmosphere-rag (Spring AI + LangChain4j) + ContextProvider |
| Infrastructure | Compute / GPU / network | Out of scope (cede to observability vendors) |
Coverage: 5/6 in-scope layers strong, 1 gap (Business), 1 deliberate out-of-scope.
- Barrier #45 (autonomous-vs-approval rules) + Gate #40 (human oversight) —
AgentIdentity.PermissionModeand@RequiresApprovalannotated live in thepersonal-assistantsample. - Barrier #52 (security) + Gate #59 (security/data-privacy) —
Sandboxprimitive withNetworkPolicy; proven live in thecoding-agentsample where a Docker alpine container clones, executes, and is destroyed per request. - Barrier #40 (monitoring perf/cost) —
AiGatewayadmits every LLM call through a single choke point; default permissive impl shipped, applications install enforcing impls. - Resilience chapter ("absorb disruption, recover quickly") —
AgentResumeHandle+RunRegistry+DurableSessionInterceptor; reattach viaX-Atmosphere-Run-Idheader. - Manual review of A2A flows (44% monitoring method) —
ProtocolBridgestandardizes every dispatch path, including in-JVM, with traces. - OpenAI-compat tool-round-trip fix — broader enterprise endpoint coverage; matters for the 42% on-prem hosting finding and for every OpenAI-compatible proxy.
Why — Gates #41 (ROI alignment) and barriers #39 (downstream-impact tracing) and #39 (linking to business outcomes). The report is emphatic that enterprise buyers can't close the "AI → dollars" loop.
Shape idea — add a sealed interface / record on AiRequest.metadata() that documents a stable namespace:
business.customer.idbusiness.session.revenue(pre-call budget) /business.session.cost(post-call actual)business.event(kind enum:new_conversation | purchase | support_escalation | churn_risk)business.tenant.id
Downstream observability vendors (Dynatrace, Datadog, New Relic) can then correlate traces to revenue / CSAT / conversion out of the box.
Brainstorming questions
- Do we ship this as a new module
atmosphere-business-context, or fold it intoatmosphere-aias a constants class? - Stable OTel semantic conventions namespace (e.g.,
atmosphere.business.*) or reuse GenAI conventions? - Do we emit these as events or spans — or both (event attached to the active span)?
Why — 41% of orgs do drift monitoring today as a validation; 39% cite "diagnosing unexpected behavior" as a top barrier. Atmosphere has the AiGuardrail SPI but ships no defaults.
Shape idea — three ship-with-it guardrails behind feature flags:
RollingEmbeddingDistanceGuardrail(per-agent rolling window; fire when response embedding is >N std-dev from the mean)OutputLengthZScoreGuardrail(detect truncation or runaway generations)ToolCallRateGuardrail(detect loops and tool-call flooding)
Brainstorming questions
- Do we bring our own embedder, or require the app to configure one?
- Where does the rolling window state live —
AgentStateor a dedicatedDriftStoreSPI? - How do we surface drift alerts? New
AiEvent.DriftDetected? Metrics counter? Both?
Why — 44% still review agent-to-agent communication flows manually (page 22). We already have the underlying data via ProtocolBridge events + CoordinationJournal; we just don't visualize it.
Shape idea — extend the admin React UI at /atmosphere/admin/ with a live flow graph: nodes = agents, edges = dispatches (labeled with skill, duration, success). Drill-down opens the CoordinationJournal entry + trace spans. Data source: WebSocket event stream + new REST endpoint /atmosphere/admin/flows.
Brainstorming questions
- How far back do we show history — last 10 runs, last 1h, configurable?
- Do we make this opt-in per user (privacy on multi-tenant admin deployments)?
- Render library? (We already use React; Dagre / ELK / d3?)
Why — Dynatrace's core thesis (page 26): "AI actions must be grounded in deterministic, real-time facts." Atmosphere's ContextProvider is RAG-oriented (retrieve + rerank); we don't have a primitive for injecting verified facts (user profile, locale, time, feature flags, recent user actions).
Shape idea — new primitive FactResolver with per-key resolvers: user.profile, user.locale, time.now, time.timezone, featureflag.<name>, audit.last_n_actions. Results flow into AgentExecutionContext.facts(), captured per turn for replay/audit.
Brainstorming questions
- Do we call this
FactResolver,DeterministicContext, orGroundingContext? - Is it a ninth primitive or an extension of
AgentState? - Auth model — how do we keep a fact resolver from leaking data across tenants?
- Cache policy — facts usually change slowly; TTL per resolver?
Why — 30% of orgs gate on ethics/fairness/bias today. Guardrail SPI exists; no defaults.
Shape idea — three implementations in atmosphere-guardrails-default:
PiiRedactionGuardrail(Microsoft Presidio-style patterns + config-driven custom regex)ToxicContentGuardrail(small classifier — local model or remote API behind an SPI)SensitiveTopicGuardrail(allowlist / denylist + LLM judge fallback)
Brainstorming questions
- Zero-deps implementations (regex-only) vs model-backed?
- Default
GuardrailResult—BlockorModify(redact in place)? - How do we test these without shipping personal data? — synthetic fixtures.
Why — Chapter 3 of the report calls out the three-phase trust build (preventive → supervised → full autonomous). Atmosphere has all the primitives; our docs don't narrate the incremental pattern.
Shape idea — new tutorial page on atmosphere.github.io: "Earning trust in autonomous operations — the three-phase adoption pattern." Walk through the same coordinator code with PermissionMode.PLAN → accept-edits → default; each phase links the guardrails and observability that make the next step safe.
Brainstorming questions
- Where in the tutorial tree (between
09-ai-endpointand10-coordinator, or its own chapter)? - Do we need a companion sample, or can pa + coding-agent demonstrate the phases with config-only toggles?
To keep the roadmap honest:
- Business-metric dashboards — cede to observability vendors. We emit the data; they render.
- General-purpose model hosting — no inference, no GPU infra. Stay runtime-agnostic.
- Vendor-specific certifications (SOC2 etc.) — repo-level, not framework-level.
- Ethics model training — we ship SPIs + one default; app teams own policy.
- Do we cut
atmosphere-ai 4.0.39first (shipping the foundation) and line these up as 4.1.x, or bundle #1 (business-metadata) into 4.0.39 since it's an additive contract? - Is there a natural order — e.g., #4 (fact-context) before #2 (drift) because fact-grounding changes what "drift" means?
- The report's Chapter 3 insight ("64% build both") — does it change our default
PermissionModefromdefault(auto-approve) toPLAN(approval required)? Safer default, breaking change. - Should the admin flow viewer (#3) become the anchor of a future "Atmosphere as the agentic control plane" narrative, positioning Atmosphere adjacent to observability vendors rather than competing?
- Of the six gaps, which two does ChefFamille want landed before the first public v0.7/v0.8 announcement, and which can slot into 4.1?