snow-flow 10.0.123 → 10.0.125
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/cli/cmd/tui/app.tsx +48 -26
package/package.json
CHANGED
package/src/cli/cmd/tui/app.tsx
CHANGED
|
@@ -143,34 +143,46 @@ export function tui(input: {
|
|
|
143
143
|
},
|
|
144
144
|
})
|
|
145
145
|
|
|
146
|
-
//
|
|
146
|
+
// All diagnostics via writeOut so they appear in the terminal
|
|
147
147
|
const r = renderer as any
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
r.
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
148
|
+
const diag = (msg: string) => r.writeOut(msg + "\r\n")
|
|
149
|
+
diag("lib=" + !!r.lib + " ptr=" + !!r.rendererPtr + " thread=" + r._useThread)
|
|
150
|
+
diag("altScreen=" + r._useAlternateScreen + " dims=" + r.width + "x" + r.height)
|
|
151
|
+
diag("root=" + !!r.root + " rootChildren=" + r.root?.getChildren?.()?.length)
|
|
152
|
+
|
|
153
|
+
// After 3s, check render loop state and try to kick it
|
|
154
|
+
setTimeout(async () => {
|
|
155
|
+
diag("--- 3s check ---")
|
|
156
|
+
diag("rootChildren=" + r.root?.getChildren?.()?.length)
|
|
157
|
+
diag("_isRunning=" + r._isRunning)
|
|
158
|
+
diag("_controlState=" + r._controlState)
|
|
159
|
+
diag("liveReqs=" + r.liveRequestCounter)
|
|
160
|
+
diag("rendering=" + r.rendering + " updateScheduled=" + r.updateScheduled)
|
|
161
|
+
diag("nextRenderBuffer=" + !!r.nextRenderBuffer)
|
|
162
|
+
|
|
163
|
+
// Try full render pipeline: root.render → renderNative
|
|
164
|
+
try {
|
|
165
|
+
diag("calling root.render(nextRenderBuffer)...")
|
|
166
|
+
r.root.render(r.nextRenderBuffer, 16)
|
|
167
|
+
diag("root.render done, calling renderNative()...")
|
|
168
|
+
r.renderNative()
|
|
169
|
+
diag("renderNative done!")
|
|
170
|
+
} catch (e: any) {
|
|
171
|
+
diag("manual render pipeline FAILED: " + e.message)
|
|
172
|
+
if (e.stack) diag(e.stack.split("\n").slice(0, 3).join(" | "))
|
|
173
|
+
}
|
|
165
174
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
175
|
+
// Also try kicking the loop directly
|
|
176
|
+
setTimeout(async () => {
|
|
177
|
+
diag("--- 5s: calling loop() ---")
|
|
178
|
+
try {
|
|
179
|
+
await r.loop()
|
|
180
|
+
diag("loop() completed")
|
|
181
|
+
} catch (e: any) {
|
|
182
|
+
diag("loop() FAILED: " + e.message)
|
|
183
|
+
}
|
|
184
|
+
}, 2000)
|
|
185
|
+
}, 3000)
|
|
174
186
|
|
|
175
187
|
await render(
|
|
176
188
|
() => (
|
|
@@ -227,6 +239,16 @@ function App() {
|
|
|
227
239
|
const dimensions = useTerminalDimensions()
|
|
228
240
|
const renderer = useRenderer()
|
|
229
241
|
renderer.disableStdoutInterception()
|
|
242
|
+
|
|
243
|
+
// Diagnostic: check dimensions and renderer state from inside the component
|
|
244
|
+
const r = renderer as any
|
|
245
|
+
const diag = (msg: string) => r.writeOut?.("[App] " + msg + "\r\n") ?? process.stderr.write("[App] " + msg + "\n")
|
|
246
|
+
diag("dims=" + dimensions().width + "x" + dimensions().height)
|
|
247
|
+
diag("theme loading...")
|
|
248
|
+
onMount(() => {
|
|
249
|
+
diag("mounted! dims=" + dimensions().width + "x" + dimensions().height)
|
|
250
|
+
diag("root children=" + r.root?.getChildren?.()?.length)
|
|
251
|
+
})
|
|
230
252
|
const dialog = useDialog()
|
|
231
253
|
const local = useLocal()
|
|
232
254
|
const kv = useKV()
|