Skip to content

Commit 5057fd9

Browse files
authored
fix: keep native question cards out of the public API (#110534)
* feat(ask-user): follow-up harness slice * feat(ask-user): follow-up channels slice * feat(ask-user): follow-up native slice * feat(ui): dock question panel above composer with stepper and compact stream summaries * docs: refresh follow-up integration maps * test(ui): align terminal summary proof * fix(infra): echo declared option answers in terminal status when free-text is allowed * fix(infra): keep reaction answering when display labels are formatter-adjusted * fix(agents): settle plain-text claims only after question registration commits * fix(agents,apps): commit-ordered claim persistence, claim-aware prompt delivery, non-blocking question refresh * fix(harness,infra): reaction-appropriate question copy, caller presentations honored * fix(native,infra,agents): local-expiry eviction, value-addressed reactions, reserve-before-request * fix(infra,android): dual-mode question resolver for compact callbacks; reset terminal retention on replayed pending * fix(harness,discord): claim-aware prompt delivery in run helper; escape finalization labels * fix(macos): merge transient-content visibility with question cards after main sync * fix: repair ask user follow-up CI * test: update limited bootstrap scope expectation * fix: retain shared question card API * chore: refresh native i18n inventory * fix: narrow shared question card visibility * test: update macOS question scope expectations
1 parent 4b74a72 commit 5057fd9

3 files changed

Lines changed: 12 additions & 13 deletions

File tree

apps/.i18n/native-source.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36739,55 +36739,55 @@
3673936739
},
3674036740
{
3674136741
"kind": "ui-call",
36742-
"line": 237,
36742+
"line": 234,
3674336743
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3674436744
"source": "Other answer",
3674536745
"surface": "apple",
3674636746
"id": "native.apple.da4494f9e875169d"
3674736747
},
3674836748
{
3674936749
"kind": "conditional-branch",
36750-
"line": 276,
36750+
"line": 273,
3675136751
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3675236752
"source": "Not selected",
3675336753
"surface": "apple",
3675436754
"id": "native.apple.e9c3855562d8e4e9"
3675536755
},
3675636756
{
3675736757
"kind": "conditional-branch",
36758-
"line": 276,
36758+
"line": 273,
3675936759
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3676036760
"source": "Selected",
3676136761
"surface": "apple",
3676236762
"id": "native.apple.bd4335213464d4be"
3676336763
},
3676436764
{
3676536765
"kind": "conditional-branch",
36766-
"line": 288,
36766+
"line": 285,
3676736767
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3676836768
"source": "Submit",
3676936769
"surface": "apple",
3677036770
"id": "native.apple.e3095b651fc46b52"
3677136771
},
3677236772
{
3677336773
"kind": "conditional-branch",
36774-
"line": 288,
36774+
"line": 285,
3677536775
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3677636776
"source": "Submitting…",
3677736777
"surface": "apple",
3677836778
"id": "native.apple.6c1adc16e0a846e5"
3677936779
},
3678036780
{
3678136781
"kind": "conditional-branch",
36782-
"line": 309,
36782+
"line": 306,
3678336783
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3678436784
"source": "Expires in \\(seconds / 60)m \\(seconds % 60)s",
3678536785
"surface": "apple",
3678636786
"id": "native.apple.698bdb0d6537edb6"
3678736787
},
3678836788
{
3678936789
"kind": "conditional-branch",
36790-
"line": 309,
36790+
"line": 306,
3679136791
"path": "apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift",
3679236792
"source": "Expires in \\(seconds)s",
3679336793
"surface": "apple",

apps/macos/Tests/OpenClawIPCTests/GatewayChannelConnectTests.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -378,6 +378,7 @@ struct GatewayChannelConnectTests {
378378
"operator.read",
379379
"operator.write",
380380
"operator.approvals",
381+
"operator.questions",
381382
"operator.pairing",
382383
])
383384
}
@@ -404,6 +405,7 @@ struct GatewayChannelConnectTests {
404405
#expect(capture.snapshot() == [
405406
"operator.admin",
406407
"operator.approvals",
408+
"operator.questions",
407409
"operator.read",
408410
"operator.write",
409411
])

apps/shared/OpenClawKit/Sources/OpenClawChatUI/ChatQuestionCard.swift

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -194,22 +194,19 @@ public final class OpenClawQuestionCardModel: Identifiable {
194194
}
195195
}
196196

197-
// periphery:ignore - Public SwiftUI component for package consumers; native apps embed it through the shared list.
198-
public struct OpenClawQuestionCard: View {
197+
struct OpenClawQuestionCard: View {
199198
@Bindable private var model: OpenClawQuestionCardModel
200199
private let onSubmit: @MainActor @Sendable (OpenClawQuestionCardModel) async -> Void
201200

202-
// periphery:ignore - Public construction is part of the exported SwiftUI component API.
203-
public init(
201+
init(
204202
model: OpenClawQuestionCardModel,
205203
onSubmit: @escaping @MainActor @Sendable (OpenClawQuestionCardModel) async -> Void)
206204
{
207205
self.model = model
208206
self.onSubmit = onSubmit
209207
}
210208

211-
// periphery:ignore - SwiftUI View witness must stay public for the exported component.
212-
public var body: some View {
209+
var body: some View {
213210
TimelineView(.periodic(from: .now, by: 1)) { context in
214211
VStack(alignment: .leading, spacing: 14) {
215212
ForEach(self.model.record.questions, id: \.id) { question in

0 commit comments

Comments
 (0)