You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(ding): report a located-but-unproven composer as a wait, not a coverage gap
A harness that locates its composer and still returns Ambiguous — an
active turn, a modal, an unrecognised footer — was folded into
NoMaintainedComposer, which says no harness could locate the pane and
that it will not clear until one can. Both halves were false for a
covered pane that may settle on its own. Per review on #375.
agent-identity: dev3.direct.claude.paqjmjfq
agent-persona: generalist
agent-supervisor: unavailable
agent-tool: Claude Code
agent-tool-version: 2.1.250
agent-runtime: Claude Code 2.1.250
tooling-profile: dotfiles@a1a5f89
Copy file name to clipboardExpand all lines: src/ding/mod.rs
+21-4Lines changed: 21 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -257,6 +257,10 @@ pub enum DeferralReason {
257
257
/// The lowest maintained composer holds text that is not the exact notice — typically a human
258
258
/// draft. Named by harness only: the text on that pane belongs to whoever is typing it.
259
259
ComposerChanged{harness:&'staticstr},
260
+
/// A maintained harness located its composer but proved nothing about this screen — an active
261
+
/// turn, a modal, or a footer it does not recognise. Distinct from an unlocatable pane: this
262
+
/// one is covered and can clear on its own, so it is a wait rather than a coverage gap.
263
+
ComposerUnproven{harness:&'staticstr},
260
264
/// No maintained harness could locate a composer on this pane, so nothing is proven either
261
265
/// way. An unrecognised, resized, or not-yet-drawn TUI lands here.
262
266
NoMaintainedComposer,
@@ -271,6 +275,10 @@ impl std::fmt::Display for DeferralReason {
271
275
formatter,
272
276
"the {harness} composer holds other text (a draft or an unfinished turn); waiting rather than typing over it"
273
277
),
278
+
Self::ComposerUnproven{ harness } => write!(
279
+
formatter,
280
+
"the {harness} composer was located but proved nothing about this screen (an active turn, a modal, or an unrecognised footer); waiting for it to settle"
0 commit comments