Forge
markdowndeeb25a2
1<!-- English translation of adr/0023-environment-readiness-glance.md. Canonical Russian: ../../adr/0023-environment-readiness-glance.md -->
2
3# ADR 0023: Glance channel - separate from IDE Health
4
5**Status:** Accepted (decision boundaries and signal selection; specific UI and types in the code - as implemented)
6**Date:** 2026-04-11
7## Related ADRs
8
9| ADR | Role |
10|-----|------|
11| [0021](0021-pfd-mfd-cockpit-attention-model.md) | PFD/MFD - Cascade IDE Cockpit Attention Model |
12| [0022](0022-workspace-health-lexicon.md) | lexicon **IDE Health** - **other** channel |
13| [0089](0089-ide-omnibus-naming-and-ide-health-channel-rename.md) | renaming the observability channel |
14
15## Summary
16
17- Markdown + **Mermaid/PlantUML** - first-class via LSP and workflow.
18- Kroki, export expanded, authoring - **orthogonal** preview ([0069](0069-markdown-preview-tool-surface-and-renderer-decoupling.md)).
19
20### Outside ADR
21
22| Document | Role |
23|----------|------|
24| [`environment-readiness-glance-v1.md`](../../design/environment-readiness-glance-v1.md) | drawing readiness glance |
25
26---
27## Context
28
291. The user needs a **quick check**: is the LSP connected, are the necessary tools available, are **relevant** variables set - **without** opening the settings, if the goal is not editing, but a reminder (peripheral attention, ADR 0021).
302. The **[IDE Health](0022-workspace-health-lexicon.md)** channel is assigned to a **task in the workspace** (build, tests, debugging, git). Confusing “is everything ok with the tools and environment” with it discredits terminology and UX.
313. A complete dump of process environment variables is **unacceptable** (noise, risk of leakage, does not answer the question “is it necessary for the IDE”).
32
33---
34
35## Solution
36
371. A separate product channel **environment readiness** is being introduced (working name in the UI: as agreed; in the docks - *environment readiness / glance*). It **does not** use `IdeHealth*` prefixes in this channel's contracts and **is not** configured by **`ide_health_*`** keys in TOML modes - these keys are related to [IDE Health](0022-workspace-health-lexicon.md); readiness placement is set separately (preset, ADR 0021).
382. **The channel snapshot** is built only from signals that the IDE **already uses** or explicitly needs to check for its scripts (LSPs, external MCPs, selected chat transport, need for `dotnet`, etc.).
393. **Environment Variables** on this channel: **only** names that Cascade IDE **actually reads** for features to work, or an agreed upon minimum checklist for documented scenarios. Do not print the entire `environ`.
404. **Executable files:** checking **required** tools for the IDE - via an explicit path from the settings or through permission via **PATH** (Windows) and **PATH** / accepted analogues on Linux; not "all programs on disk".
415. **Settings screen** remains the **editing** place; readiness channel - **inspection** and short tips + “Open settings” link. Secrets and API keys at glance **do not** show in clear form (mask or not display).
426. **Presentation layer** (full screen page in the secondary outline of the shell - v1 anchor in the Mfd zone column; PFD badges; palette commands - without TabControl) is specified by the preset and ADR 0021 separately from the IDE Health strip.
43
44Details of signals v1, composition of fields and placement in the UI are in [drawing](../../design/environment-readiness-glance-v1.md).
45
46---
47
48## Consequences
49
50- The new "show environment state for IDE" features expand on **this** channel and document added env/check names in a drawing or in code with a link to the ADR.
51- Expansion of **IDE Health** with new segments about LSP/env **is not done** under the guise of the same channel - if in doubt, see §Context and [0022](0022-workspace-health-lexicon.md).
52
53---
54
55## Open
56
57- Name of types in the code (`EnvironmentReadiness*` or other) - during the first implementation.
58- Localization of page/card titles.
View only · write via MCP/CIDE