Quite likely it is binary (or maybe even UTF-8 now?) = there is some non-ASCII byte there. Often there is a button there to switch to text mode, maybe it should be there always (currently it is not).
There are what look like random escape codes in the tracebacks and such, which look like formatting codes for terminal emulators. But they're not really that useful for a written .txt log in a file, given that they confuse programs.
The only button I get is for “decode JS”, but that doesn't seem to do anything in this case. Having a way to force it to treat the file as text would be helpful, though, especially in cases like these where I know it really is text with just a couple of stray rouge bytes that can be safely ignored.
Which OS or browser it is? On Windows in Chrome it definitely adds just .txt
For some reason on Ubuntu and Chromium it wants to add the string “ (StorageFile)” to the end of the filename, which confuses the system file save dialog. I can rename it but it's annoying. That's what displays in the storage list in the UI, too, but I'd argue that the “(StorageFile)” prefix should be dropped in the suggested filename when saving (or else placed just before the extension, or at the very start of the name or something).
It may be out of memory (or low stack?) situation. Maybe some app that use lot of memory/stack is running? Do you see some error or exception message in the 'dump of strings' or series of dots inside of (json) output?
It doesn't appear that there is a memory issue. There are no errors or exceptions, either, just the list of strings. However, I am starting to notice the pattern: It seems to happen consistently if the watch has been idle for a minute or so before I request the list. If the Bluetooth link was just active, it works fine, but after a couple of minutes, the odd delay and strange behavior occur, only for it to work fine if I immediately try again. It sort of makes me wonder if it could have anything to do with power management on the Bluetooth link somehow causing problems.
I happened to catch this in the IDE error log when it happened:
WARNING: No result found for "require('Storage').list().forEach(x=>print(JSON.stringify(x)));" - just got "< <<\r\n\".bootcde\"\r\n\"launch.app.js\"\r\n\"launch.settings.js\"\r\n\"launch.info\"\r\n\"antonclk.app.js\"\r\n\"antonclk.img\"\r\n\"antonclk.info\"\r\n\"about.app.js\"\r\n\"about.img\"\r\n\"about.info\"\r\n\"widlock.wid.js\"\r\n\"widlock.info\"\r\n\"widbat.wid.js\"\r\n\"widbat.info\"\r\n\"welcome.boot.js\"\r\n\"welcome.app.js\"\r\n\"welcome.settings.js\"\r\n\"welcome.img\"\r\n\"welcome.info\"\r\n\"health.img\"\r\n\"health.settings.js\"\r\n\"setting.img\"\r\n\"sched.bo"
getFileList TypeError: Cannot read properties of undefined (reading 'trim')
Which clearly looks like the data it received is being interrupted somehow (although I then get what looks like an untruncated dump of it in the debug pane, whereas normally when it works correctly nothing at all appears there except a new prompt).
As far as I know, I haven't seen other issues when doing other actions after such inactivity (such as sending/receiving apps with the App Loader, etc.) Just the storage list in the IDE.