Ikenga v0.5.0
Ikenga v0.5.0
44 commits since v0.4.0.
Features
- feat(artifact): resolve
file:data sources against the artifact mount - feat(claude): S-2 — drop the overlay walk from jsonl_projects_roots
- feat(scripts): migration for pre-D-13 chat transcripts, with two hard gates
- feat(claude): retire the per-session CLAUDE_CONFIG_DIR overlay
- feat(scripts): backfill claude_session_id for transcripts on disk
- feat(shell): F-9 — inject settings-secret env into sidecars from Stronghold
- feat(shell): --info / --info-soft cool role for Studio rendering-status (G-02)
- feat(shell): pane lifecycle — xterm cache, stable tab keys, pooled pkg iframes (flagged), pkg-mcp event relay
- feat(shell): two-line pkg menu header — subtitle on PkgMenuItem
Fixes
- fix(terminal): arm the T-3a reclaim nudge for terminal surfaces only
- fix(terminal): T-3a — reclaim-side SIGWINCH nudge (reclaim half of T-2)
- fix(terminal): close the T-2 wobble's one-way door on the shared PTY
- fix(terminal): T-2 — SIGWINCH-on-attach repaint nudge for detached pop-outs
- fix(paths): detect
~/-rooted paths, unblocking resolvePath's tilde branch - fix(terminal): close the PTY attach seam in Rust instead of deduping in JS
- fix(terminal): keep buffered scrollback until a live chunk actually lands
- fix(chat): GC abandoned threads on close, safely under concurrent mounts
- fix(claude): pin transcript retention in the session overlay, without clobbering user settings
- fix(claude): graceful SIGTERM shutdown for claude children
- fix(shell): revive the two dead /iyke/logs filters
- fix(shell): Group G — reconcile pty-output-buffer replay by absolute offset
- fix(shell): F-7 — main.tsx can no longer brick on a failed boot module load
- fix(shell): F-3 — dispose terminal PTY + evict xterm/webgl on tab close
- fix(shell): F-1 — stop leaking a host AppBridge message listener per pooled refresh
- fix(shell): dock ⌘J can no longer strand the dock in
hidden - fix(studio wp13): nested-source subresource resolution, host.openFolder trust wiring, dev-reload sidecar reap
Tests
- test(terminal): cover the T-3a reclaim-nudge arming logic
Chores
- chore: version packages
- chore(changeset): note the T-2/T-3a SIGWINCH nudge in the v0.5.0 entry
- chore: add minor changeset for v0.5.0
Other
- Merge pull request #66 from Royalti-io/changeset-release/main
- Merge pull request #62 from Royalti-io/release/v0.5.0-prep
- Merge pull request #65 from Royalti-io/test/t3a-reclaim-nudge-coverage
- Merge pull request #64 from Royalti-io/fix/t3a-reclaim-nudge
- Merge pull request #63 from Royalti-io/fix/t2-sigwinch-on-attach
- Merge pull request #60 from Royalti-io/fix/transcript-persistence-wave1
- merge: pty-replay (Group G) + F-9 settings-secret injection + /iyke/logs fixes
- merge: pane lifecycle (pooled pkg iframes, default ON) + F-1/F-3/F-7 + PTY hardening
- harden(shell): PTY reader-thread panic guard + live-session cap
- merge: studio WP-13 shell fixes — nested-route inlining, host.openFolder trust wiring, sidecar reap
- merge: studio WP-12 — remove legacy flat-frame storyboard renderer
- merge: studio WP-04 — per-folder trust gate (pkg_studio_request_project_access)
- studio(wp12): remove legacy flat-frame storyboard renderer
- wip(studio): WP-04 trust gate — command + trust helpers (salvaged; tests + gates pending)
Full Changelog: v0.4.0...v0.5.0
Install
# macOS / Linux — AppImage (portable)
curl -fsSL https://ikenga.dev/install.sh | sh
# Linux — system-wide .deb
curl -fsSL https://ikenga.dev/install.sh | IKENGA_FORMAT=deb sh
# Windows — Git Bash / MSYS / Cygwin
curl -fsSL https://ikenga.dev/install.sh | sh