WorkspacePersistence
class WorkspacePersistence(appName: String, baseDir: File = File(System.getProperty("user.home"), ".2p-kt"))
Persists open documents (each with its own query, query history, resolution/Solutions-tree history, and editor zoom level), the active look-and-feel, and window bounds to a hidden per-app JSON file under the user's home directory, so a Swing IDE variant can restore as much of its last session as possible on startup. The PersistedWorkspace shape and the logic to capture/restore one are shared with other frontends (e.g. ide-web) via ui/gui's it.unibo.tuprolog.ui.gui.persistence package; only this file-based storage is ide-swing-specific.