Skip to content

Releases: GalaxyRuler/lisan-studio

Lisan Studio v1.0.0-rc1 — V3 Git & Multi-Root

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 06 Jun 06:40
b7a31cd

V3 milestone: Git source-control UI + Multi-root workspaces

What's new

  • Git status panel — file-level dirty state, stage/unstage
  • Inline diff viewer — unified diff per file
  • Commit workflow — message panel, commit, push, pull, fetch
  • Branch management — create, switch, merge, delete via picker
  • History log panel — full commit history
  • Blame gutter — per-line annotation in EditorSurface
  • Historical commit diff — diff any commit against its parent
  • Multi-root workspace — add/remove roots, per-root tree browsing

Backend

  • libgit2 via CMake FetchContent (ADR-0016)

Signing

Unsigned (ADR-0010 option b). See SmartScreen guidance.

CI

GHA self-hosted run 27020520242 — msi-install + msi-upgrade passed.


V2 baseline: v0.5.0-beta | V3 plan: plans/lisan-studio/v3/ in command-center vault

v0.5.0-beta — V2 public release (LSP, debugger, terminal)

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 05 Jun 12:32
7185cd1

Lisan Studio v0.5.0-beta — V2 milestone release. First full public-use release with LSP, debugger, and integrated terminal.

What's new in V2

Language intelligence (LSP)

  • Code completion and hover tooltips powered by a pylsp translation shim for apython
  • Go-to-definition (Ctrl+Click), find-references (Shift+F12), and rename refactor (F2)
  • Semantic highlighting, document outline, and workspace symbol search (Ctrl+T)

Debugger

  • Full debugpy DAP integration: set breakpoints in the gutter, step over/into/out (F10/F11/Shift+F11), continue (F5)
  • Locals panel, watch expressions (right-click → Add to Watch), and call-stack panel with frame switching

Integrated terminal

  • Windows ConPTY-backed terminal panel with cmd, PowerShell, and WSL bash
  • Multi-shell picker persists choice per workspace; replaces the V1 placeholder command

Multi-cursor extensions (completes V1.5 keystone)

  • Ctrl+Z/Y, Tab/Shift+Tab, and Arabic IME composition now apply across all secondary cursors
  • Column/rectangle selection via Alt+drag (shipped in v0.2.0-beta) unchanged

Editor polish

  • 5-second incremental autosave for untitled drafts (no longer lost between transitions)
  • Canonical command-id migration (dotted camelCase; user shortcut bindings migrate automatically)

Known limitations

  • MSI is unsigned — SmartScreen shows "Windows protected your PC" on first launch. Click More info then Run anyway. See docs/INSTALLATION.md. (ADR-0010 revisit 2026-06-05: unsigned accepted for this release.)
  • LSP features require the apython runtime bundled in the MSI. Externally installed Python environments are not supported in v0.5.0.

Installation and upgrade

  • Fresh install: double-click the MSI.
  • Upgrade from any prior v0.1.x or v0.2.x beta: the MSI upgrades automatically via Windows Installer MajorUpgrade.
  • Upgrade chain v0.1.0 → v0.5.0 verified by GHA run 27014307173 (msi-install + msi-upgrade both success).

Evidence: GHA run 27014307173 on 125a6f6 (pre-merge head).
MSI SHA256: 8209d4836a863794344258cf108647b06625293c401e4e9cbddd6d3b72da5057

v0.2.0-beta (V1.5 milestone close)

Pre-release

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 26 May 20:59

V1.5 milestone-close release. The V1.5 roadmap is archived at docs/ROADMAP-V1.5-archive.md; V2 planning continues in docs/ROADMAP-V2.md.

Added

  • Column / rectangle selection via Alt+drag. Hold Alt and left-drag in the editor to generate one cursor per line in the rectangle, each with a selection (or zero-width cursor when columns coincide) spanning the rectangle's column range. Reuses all of v0.1.3-beta's multi-cursor machinery — atomic edit blocks, soft/hard caps, Esc collapse — so typing, Backspace, Delete, arrow movement, and Return apply across the generated cursors just like Ctrl+Click or Ctrl+D cursors.

V1.5 milestone summary (informational)

V1.5 shipped across three cumulative release tracks during May 2026:

  • v0.1.2-beta (2026-05-24): search/replace project-scan cap raised from 500 to 5000 files; release-evidence trust-audit instrumentation; perf baseline established; SmartScreen click-path documented; ADR-0010 defers MSI code signing.
  • v0.1.3-beta (2026-05-24): multi-cursor primary+secondary editing keystone (Ctrl+Click, Ctrl+Alt+Up/Down, Ctrl+D, Ctrl+Shift+L, Esc, soft cap 100 / hard cap 1000, single-undo invariant).
  • v0.2.0-beta (2026-05-26, this release): Alt+drag column selection closes the V1.5 multi-cursor keystone; milestone closed.

Known v0.2.0-beta limitations

  • Alt+drag column selection has no live preview rectangle during the drag. The generated cursors appear on mouse release. Live preview is deferred to V2.
  • Alt+drag column selection operates on logical lines only. If the editor is showing soft-wrapped lines, the drag rectangle treats each logical line as a single row rather than each wrapped visual row. Soft-wrap-as-visual-row column selection is deferred to V2.

Evidence: GitHub Actions run 26474081761 (msi-install + msi-upgrade both success on fc8787a).

MSI SHA256: 867dfc745d8f432504675ba5ce9f508d6322860aaf387e6952837bfcd944e0ca

v0.1.3-beta

v0.1.3-beta Pre-release
Pre-release

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 24 May 21:10

Multi-cursor editing: hold Ctrl and click to add a cursor at the click position; Ctrl+Alt+Up / Ctrl+Alt+Down add cursors above/below the primary cursor at the same column; Ctrl+D adds a cursor at the next exact match of the current selection; Ctrl+Shift+L converts every find-match into a cursor; Esc collapses to a single cursor. Typing, Backspace, Delete, arrow movement, and Return apply to all cursors atomically with a single undo step. Soft cap notice at 100 simultaneous cursors; hard cap at 1000. Five new commands (cursor.addAbove, cursor.addBelow, cursor.addAtNextMatch, cursor.selectAllMatches, cursor.collapseToSingle) are in the command palette and Edit menu, rebindable via shortcuts JSON.

Known v0.1.3-beta limitations: IME composition refused while secondary cursors are active (press Esc to collapse first); column / rectangle selection deferred; Ctrl+Z, Ctrl+Y, Tab indent currently apply only to the primary cursor.

Evidence: GitHub Actions run 26371806343 (msi-install + msi-upgrade both success on cec085a).

MSI SHA256: df01b5488233a1898c8bf709624d957228eea9fd52bcf61a8b120047c073efda

v0.1.2-beta

v0.1.2-beta Pre-release
Pre-release

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 24 May 15:58

v0.1.2-beta (2026-05-24)

  • Search/replace project-wide scan cap raised from 500 to 5000 files. The per-file 1 MB ceiling and the per-call result limit are unchanged. Truncation status-bar message now dynamically reports the active cap.

Lisan Studio 0.1.1 Beta Notes

Fixed (data-safety regressions in 0.1.0-beta)

  • Project-wide replace now preserves leading whitespace and per-file line endings. (was: stripped indentation, mixed CRLF/LF on apply)
  • Editor save preserves the loaded file's line-ending style. (was: silently converted CRLF to LF)
  • MSI install registers as a single entry in HKLM\WOW6432Node\Uninstall instead of a dual HKCU+HKLM registration. (was: two entries per install, polluted Programs and Features)
  • Build identifier (git short SHA or ISO UTC timestamp) is captured at HKCU\Software\LisanStudio\BuildId for support diagnostics.

Added

  • Document model: every open file is tracked by a real DocumentRegistry with version-checked text edits, external file change polling, and a Reload/Keep/Compare prompt when files change externally.
  • Workspace trust: grant + revoke commands with an audit trail at .lisan-workspace/trust-audit.jsonl, surfaced in the diagnostics bundle.
  • Editor torture coverage for V1.5 gate decisions: 100k-line files, undo/redo storms, find/replace storms, IME composition cycles, soft-wrap on mixed RTL/LTR.
  • Search/replace cap notice: "تم اقتطاع نتائج البحث عند 500 ملف" appears in status bar when the 500-file scan cap fires.
  • Command-registry sweep: every visible command is now generatively asserted to have id/label/category/trigger/uniqueness/shortcut/no-BiDi-controls.

Changed

  • MSI test pipeline migrated to GitHub Actions (.github/workflows/msi-tests.yml). Per-step logs replace the prior custom Hyper-V harness's sparse checkpoint files.
  • Editor enforces CRLF on save for new untitled buffers (Windows-default); Mixed-line-ending files are normalized to their dominant style on first save.
  • MainWindow extracted into RuntimeOrchestrator, EditorTabsController, ProjectTreeController, BottomPanelController, CommandPaletteController, WorkbenchTheme. Internal refactor - no user-facing behavior change beyond the per-feature fixes above.

Removed

  • Legacy Hyper-V harness entry points (qa/vm/*, the wrapper test scripts). MSI test orchestration now lives in the GHA workflow exclusively.
  • AllowSameVersionUpgrades on the WiX MajorUpgrade. Each beta now bumps a patch version; same-version replacement is no longer the upgrade cadence.

Known limitations (deferred to V1.5+ / V2)

  • No multi-cursor or column selection. (gated on QPlainTextEdit cost-model evidence)
  • Terminal panel boundary exists but real shell execution is not yet wired. (gated on stronger trust model)
  • No language-server protocol features (completion, diagnostics from unsaved buffers, go-to-definition). (V2 scope)
  • No debugger. (V2 scope)
  • No Git source-control UI. (V3 scope)
  • Search and project-replace scan up to the first 500 files; larger projects truncate with a status-bar notice.

Upgrade from 0.1.0-beta

  • Install LisanStudio-0.1.1-beta.msi normally. Windows Installer's MajorUpgrade removes the prior install and installs the new one in a single transaction.
  • User settings under HKCU\Software\LisanStudio survive the upgrade.
  • The verified upgrade path is the one tested in GHA run 26331615773.

Lisan Studio 0.1.0 Beta Notes

Included

  • Native Qt 6 desktop shell.
  • Lisan Studio app branding and bundled logo resource.
  • Premium dark visual system based on the accepted Claude design.
  • Custom RTL Claude-design single top shell with integrated menus, primary run action, and unified command/search field.
  • Integrated dropdown menus for file, edit, view, tools, and help.
  • Primary run and command/search are single top-bar entry points to avoid duplicate run/search surfaces.
  • No inherited QMenuBar or QToolBar shell surface.
  • RTL editor tabs, project sidebar, bottom panel tabs, and status bar.
  • Arabic-first editor surface based on QPlainTextEdit.
  • Minimal .apy syntax highlighting.
  • Hidden Unicode BiDi control detection.
  • Project folder tree.
  • Editor tabs for multiple open documents.
  • Bottom panel tabs for terminal, output, problems, search results, and debug.
  • Project text search with clickable file/line result rows.
  • Problems panel entries for hidden BiDi controls and runtime failures.
  • Run current .apy through bundled runtime with live output, exit code, elapsed time, and cancel action.
  • RTL settings dialog with editor font controls, runtime diagnostics, and recent projects.
  • Runtime diagnostics for bundled Python, lughat-althuban, run, lint, and format availability.
  • Lisan Studio application metadata, executable name, install folder, and shortcut targets.
  • Packaged Qt, Python, and lughat-althuban license payloads.
  • WiX MSI packaging path for LisanStudio-0.1.0-beta.msi.
  • MSI install/uninstall smoke script for private beta validation.
  • Release evidence script for checksums, validation log, known issues, and screenshot capture.
  • Manual beta checklist script for recording the installed-app handoff pass as a professionally formatted Word review packet, with Markdown and JSON traceability files.

Validation Status

  • Automated Homelab MSI/GUI/release evidence lane passed inside LisanStudio-QA.
  • Manual installed-app QA is complete.
  • Private beta handoff decision: ready; previously recorded non-blocking polish
    notes are resolved in the current codebase.

Resolved reviewer notes:

  • Normal app launch is configured as a Windows GUI executable so it does not
    open a command window.
  • Right-click Undo/Redo menu actions are Lisan-owned actions and trigger the
    same editor commands as keyboard shortcuts.
  • Search result file text and line metadata are kept in a guarded RTL metadata
    cluster.
  • Problems panel diagnostic subtext is right-anchored under the metadata row.

Deferred

  • Git UI.
  • AI panel.
  • Public distribution.
  • Auto-update.
  • Plugin system.

Release Blockers

  • Cursor or selection corruption in mixed Arabic/English code.
  • Arabic output mojibake.
  • Save/open data loss.
  • Installer requiring manual PATH or Python setup.
  • MSI install/uninstall smoke failure.
  • Missing Qt, Python, or lughat-althuban license payloads.
  • Hidden BiDi controls inserted by the editor.
  • Any return of a native QMenuBar or QToolBar shell surface.
  • Left-to-right shell regression in top command bar menus, project/sidebar, tabs, status bar, or bottom panel.

Lisan Studio 0.1.1 Beta

Pre-release

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 23 May 12:02

Lisan Studio 0.1.1 Beta Notes

Fixed (data-safety regressions in 0.1.0-beta)

  • Project-wide replace now preserves leading whitespace and per-file line endings. (was: stripped indentation, mixed CRLF/LF on apply)
  • Editor save preserves the loaded file's line-ending style. (was: silently converted CRLF to LF)
  • MSI install registers as a single entry in HKLM\WOW6432Node\Uninstall instead of a dual HKCU+HKLM registration. (was: two entries per install, polluted Programs and Features)
  • Build identifier (git short SHA or ISO UTC timestamp) is captured at HKCU\Software\LisanStudio\BuildId for support diagnostics.

Added

  • Document model: every open file is tracked by a real DocumentRegistry with version-checked text edits, external file change polling, and a Reload/Keep/Compare prompt when files change externally.
  • Workspace trust: grant + revoke commands with an audit trail at .lisan-workspace/trust-audit.jsonl, surfaced in the diagnostics bundle.
  • Editor torture coverage for V1.5 gate decisions: 100k-line files, undo/redo storms, find/replace storms, IME composition cycles, soft-wrap on mixed RTL/LTR.
  • Search/replace cap notice: "تم اقتطاع نتائج البحث عند 500 ملف" appears in status bar when the 500-file scan cap fires.
  • Command-registry sweep: every visible command is now generatively asserted to have id/label/category/trigger/uniqueness/shortcut/no-BiDi-controls.

Changed

  • MSI test pipeline migrated to GitHub Actions (.github/workflows/msi-tests.yml). Per-step logs replace the prior custom Hyper-V harness's sparse checkpoint files.
  • Editor enforces CRLF on save for new untitled buffers (Windows-default); Mixed-line-ending files are normalized to their dominant style on first save.
  • MainWindow extracted into RuntimeOrchestrator, EditorTabsController, ProjectTreeController, BottomPanelController, CommandPaletteController, WorkbenchTheme. Internal refactor - no user-facing behavior change beyond the per-feature fixes above.

Removed

  • Legacy Hyper-V harness entry points (qa/vm/*, the wrapper test scripts). MSI test orchestration now lives in the GHA workflow exclusively.
  • AllowSameVersionUpgrades on the WiX MajorUpgrade. Each beta now bumps a patch version; same-version replacement is no longer the upgrade cadence.

Known limitations (deferred to V1.5+ / V2)

  • No multi-cursor or column selection. (gated on QPlainTextEdit cost-model evidence)
  • Terminal panel boundary exists but real shell execution is not yet wired. (gated on stronger trust model)
  • No language-server protocol features (completion, diagnostics from unsaved buffers, go-to-definition). (V2 scope)
  • No debugger. (V2 scope)
  • No Git source-control UI. (V3 scope)
  • Search and project-replace scan up to the first 500 files; larger projects truncate with a status-bar notice.

Upgrade from 0.1.0-beta

  • Install LisanStudio-0.1.1-beta.msi normally. Windows Installer's MajorUpgrade removes the prior install and installs the new one in a single transaction.
  • User settings under HKCU\Software\LisanStudio survive the upgrade.
  • The verified upgrade path is the one tested in GHA run 26331615773.

Lisan Studio 0.1.0 Beta Notes

Included

  • Native Qt 6 desktop shell.
  • Lisan Studio app branding and bundled logo resource.
  • Premium dark visual system based on the accepted Claude design.
  • Custom RTL Claude-design single top shell with integrated menus, primary run action, and unified command/search field.
  • Integrated dropdown menus for file, edit, view, tools, and help.
  • Primary run and command/search are single top-bar entry points to avoid duplicate run/search surfaces.
  • No inherited QMenuBar or QToolBar shell surface.
  • RTL editor tabs, project sidebar, bottom panel tabs, and status bar.
  • Arabic-first editor surface based on QPlainTextEdit.
  • Minimal .apy syntax highlighting.
  • Hidden Unicode BiDi control detection.
  • Project folder tree.
  • Editor tabs for multiple open documents.
  • Bottom panel tabs for terminal, output, problems, search results, and debug.
  • Project text search with clickable file/line result rows.
  • Problems panel entries for hidden BiDi controls and runtime failures.
  • Run current .apy through bundled runtime with live output, exit code, elapsed time, and cancel action.
  • RTL settings dialog with editor font controls, runtime diagnostics, and recent projects.
  • Runtime diagnostics for bundled Python, lughat-althuban, run, lint, and format availability.
  • Lisan Studio application metadata, executable name, install folder, and shortcut targets.
  • Packaged Qt, Python, and lughat-althuban license payloads.
  • WiX MSI packaging path for LisanStudio-0.1.0-beta.msi.
  • MSI install/uninstall smoke script for private beta validation.
  • Release evidence script for checksums, validation log, known issues, and screenshot capture.
  • Manual beta checklist script for recording the installed-app handoff pass as a professionally formatted Word review packet, with Markdown and JSON traceability files.

Validation Status

  • Automated Homelab MSI/GUI/release evidence lane passed inside LisanStudio-QA.
  • Manual installed-app QA is complete.
  • Private beta handoff decision: ready; previously recorded non-blocking polish
    notes are resolved in the current codebase.

Resolved reviewer notes:

  • Normal app launch is configured as a Windows GUI executable so it does not
    open a command window.
  • Right-click Undo/Redo menu actions are Lisan-owned actions and trigger the
    same editor commands as keyboard shortcuts.
  • Search result file text and line metadata are kept in a guarded RTL metadata
    cluster.
  • Problems panel diagnostic subtext is right-anchored under the metadata row.

Deferred

  • Git UI.
  • AI panel.
  • Public distribution.
  • Auto-update.
  • Plugin system.

Release Blockers

  • Cursor or selection corruption in mixed Arabic/English code.
  • Arabic output mojibake.
  • Save/open data loss.
  • Installer requiring manual PATH or Python setup.
  • MSI install/uninstall smoke failure.
  • Missing Qt, Python, or lughat-althuban license payloads.
  • Hidden BiDi controls inserted by the editor.
  • Any return of a native QMenuBar or QToolBar shell surface.
  • Left-to-right shell regression in top command bar menus, project/sidebar, tabs, status bar, or bottom panel.

Lisan Studio 0.1.0 Beta

Pre-release

Choose a tag to compare

@GalaxyRuler GalaxyRuler released this 11 May 08:35

Lisan Studio 0.1.0 Beta Notes

Included

  • Native Qt 6 desktop shell.
  • Lisan Studio app branding and bundled logo resource.
  • Premium dark visual system based on the accepted Claude design.
  • Custom RTL Claude-design single top shell with integrated menus, primary run action, and unified command/search field.
  • Integrated dropdown menus for file, edit, view, tools, and help.
  • Primary run and command/search are single top-bar entry points to avoid duplicate run/search surfaces.
  • No inherited QMenuBar or QToolBar shell surface.
  • RTL editor tabs, project sidebar, bottom panel tabs, and status bar.
  • Arabic-first editor surface based on QPlainTextEdit.
  • Minimal .apy syntax highlighting.
  • Hidden Unicode BiDi control detection.
  • Project folder tree.
  • Editor tabs for multiple open documents.
  • Bottom panel tabs for terminal, output, problems, search results, and debug.
  • Project text search with clickable file/line result rows.
  • Problems panel entries for hidden BiDi controls and runtime failures.
  • Run current .apy through bundled runtime with live output, exit code, elapsed time, and cancel action.
  • RTL settings dialog with editor font controls, runtime diagnostics, and recent projects.
  • Runtime diagnostics for bundled Python, lughat-althuban, run, lint, and format availability.
  • Lisan Studio application metadata, executable name, install folder, and shortcut targets.
  • Packaged Qt, Python, and lughat-althuban license payloads.
  • WiX MSI packaging path for LisanStudio-0.1.0-beta.msi.
  • MSI install/uninstall smoke script for private beta validation.
  • Release evidence script for checksums, validation log, known issues, and screenshot capture.

Deferred

  • Git UI.
  • AI panel.
  • Public distribution.
  • Auto-update.
  • Plugin system.

Release Blockers

  • Cursor or selection corruption in mixed Arabic/English code.
  • Arabic output mojibake.
  • Save/open data loss.
  • Installer requiring manual PATH or Python setup.
  • MSI install/uninstall smoke failure.
  • Missing Qt, Python, or lughat-althuban license payloads.
  • Hidden BiDi controls inserted by the editor.
  • Any return of a native QMenuBar or QToolBar shell surface.
  • Left-to-right shell regression in top command bar menus, project/sidebar, tabs, status bar, or bottom panel.

Validation Summary

  • Commit: 901f232
  • Automated gate: PASS
  • MSI install smoke: PASS
  • Installed app screenshot captured from MSI-installed app
  • MSI SHA256: 0AD3AE8F033732C3A49BB0D558AFECC43D0D6725813F2288872AD8DEB7F0044C

Full validation log is attached as VALIDATION_LOG.md.