Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
08bbaa8
docs: design temporal issue history slider
teloverge Aug 4, 2026
ed21975
docs: plan temporal history implementation
teloverge Aug 4, 2026
623704e
feat(history): scrub issue creation from local ledger
teloverge Aug 5, 2026
35f999c
feat(history): replay issue close and reopen activity
teloverge Aug 5, 2026
e7d2525
feat(history): replay milestone membership without moving stars
teloverge Aug 5, 2026
4d20b67
feat(history): play complete history with event ticks
teloverge Aug 5, 2026
5bf14ff
feat(history): follow activity with delta-only synchronization
teloverge Aug 5, 2026
fbe1a3d
feat(history): harden native temporal playback
teloverge Aug 5, 2026
80ea1c1
docs: design node visual hierarchy and depth
teloverge Aug 7, 2026
b159837
docs: distinguish current and selected nodes
teloverge Aug 7, 2026
0e61235
docs: plan node visual hierarchy implementation
teloverge Aug 7, 2026
a411cdc
feat(web): derive workflow visual priority
teloverge Aug 7, 2026
7228b5d
feat(web): prioritize active node visuals
teloverge Aug 7, 2026
3c59d8e
feat(web): render dimensional issue nodes
teloverge Aug 7, 2026
4f48937
feat(web): compact workflow arrowheads
teloverge Aug 7, 2026
9def3c3
docs: record node visual hierarchy
teloverge Aug 7, 2026
1b78e4b
feat: make headless server the default and gate desktop mode
teloverge Aug 19, 2026
3512528
fix(windows): select desktop binary for Tauri packaging
teloverge Aug 19, 2026
2e7dfa8
merge: incorporate temporal history from PR #85
teloverge Aug 19, 2026
909f912
merge: incorporate visual hierarchy from PR #88
teloverge Aug 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,17 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install -y \
build-essential curl file libayatana-appindicator3-dev librsvg2-dev \
build-essential curl file libayatana-appindicator3-dev libdbus-1-dev librsvg2-dev \
libssl-dev libwebkit2gtk-4.1-dev libxdo-dev patchelf wget
- run: npm --prefix web ci
- run: npm --prefix web run build
- run: cargo fmt --check
- run: cargo clippy --workspace --all-targets -- -D warnings
- run: cargo test --workspace
- run: cargo build --workspace
- name: Validate the optional native desktop feature
run: cargo test -p stellr-app --all-targets --features desktop
- run: cargo build -p stellr-app --features desktop

web:
runs-on: ubuntu-latest
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/linux-bundle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ jobs:
curl \
file \
libayatana-appindicator3-dev \
libdbus-1-dev \
librsvg2-dev \
libssl-dev \
libwebkit2gtk-4.1-dev \
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ jobs:
shell: powershell
run: Get-ChildItem scripts\tests -Filter *.tests.ps1 | ForEach-Object { & $_.FullName }
- run: cargo fmt --check
- run: cargo clippy --workspace --all-targets -- -D warnings
- run: cargo test --workspace
- run: cargo build --workspace
- run: cargo clippy --workspace --all-targets --features stellr-app/desktop -- -D warnings
- run: cargo test --workspace --features stellr-app/desktop
- run: cargo build --workspace --features stellr-app/desktop
- name: Require the tag to match the application version
shell: powershell
run: |
Expand Down Expand Up @@ -168,7 +168,7 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install -y \
build-essential curl file libayatana-appindicator3-dev librsvg2-dev \
build-essential curl file libayatana-appindicator3-dev libdbus-1-dev librsvg2-dev \
libssl-dev libwebkit2gtk-4.1-dev libxdo-dev patchelf wget
- run: npm --prefix web ci
- name: Build Linux release packages
Expand Down
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
24
15 changes: 7 additions & 8 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
# Repository instructions

Assume a native Windows 11 development environment.

- Do not use WSL, Linux shells, Linux toolchains, or `/mnt/*` paths for development, builds, tests, benchmarks, or validation.
- Run commands with native Windows PowerShell or `cmd.exe` from Windows paths such as `D:\dev`.
- Use native Windows executables and toolchains (`cargo.exe`, `rustc.exe`, `bun.exe`, and `powershell.exe`).
- If native Windows command execution is unavailable, stop and report the environment limitation instead of substituting WSL results.
- Maintain release notes as an append-only, newest-first changelog with a separate section for every shipped version and an `Unreleased` section for pending work.
- Never fold new changes into an older release section or repeat cumulative changes under every version.
- Keep Windows and macOS packaging checks platform-specific. Do not replace
their native CI runners with WSL or cross-compilation for release evidence.
- Maintain release notes as an append-only, newest-first changelog with a
separate section for every shipped version and an `Unreleased` section for
pending work.
- Never fold new changes into an older release section or repeat cumulative
changes under every version.

## Agent skills

Expand Down
40 changes: 40 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,24 @@

## Unreleased

- Kept the authenticated Tailnet browser session stable across launcher-driven
rebuilds and restarts so existing browser tabs can reconnect, and replaced
endless retries for invalid sessions with an explicit expiration message;
rebuilt executable inodes are now recognized when replacing the old server.
- Added an npm-accessible Tailnet launcher that safely replaces the prior
instance and binds the optimized web server to the current Tailscale IPv4
address with session authentication enabled, while retaining the latest
authenticated URL in an owner-only local file.
- Added Linux shell, Windows PowerShell, and Windows Command Prompt helpers for
retrieving that authenticated URL from the `amd-halo` Tailnet host over SSH.
- Added a Debian/Ubuntu dependency installer for optional native desktop and
package builds using Tauri, WebKitGTK, D-Bus, and app indicators.
- Updated the locked DOMPurify and Nano ID dependencies to versions that pass
the npm security audit.
- Added `.nvmrc`, npm package metadata, and strict engine checks requiring
Node.js 24 with npm 12.0.2 before installing the web workspace.
- Made the browser-hosted server the default Linux development build, with
Tauri and OS credential storage isolated behind an explicit desktop feature.
- Suspended star-map GPU rendering while the app is minimized or its browser
document is hidden, while retaining five-minute native background polling.
- Made project changes immediate and responsive: first-time constellation
Expand All @@ -19,6 +37,9 @@
activated it across CI, bundle, and release workflows.
- Made newly added repositories appear in the sidebar without restarting
Stellr or performing another space action.
- Clarified active-work priority with dimensional issue nodes, a maximum of two
status/selection rings, compact arrows, and literal `in-progress` label
support ahead of `ready-for-agent` and blocked work.
- Emphasized the incoming and outgoing edges directly connected to a selected
node while preserving dependency direction, state styling, and motion.
- Replaced compact subissue arcs with adaptive, label-aware concentric orbits,
Expand All @@ -33,6 +54,25 @@
- Split the Windows desktop and CLI entry points so installed shortcuts and
protocol launches open without a terminal while `stellr serve` retains
native PowerShell and Command Prompt behavior.
- Hardened temporal playback with provider-backed verification cutoffs,
cutoff-safe cursors, native offline restarts, durable import resume, migration
rollback, space-scoped deletion, bounded rate-limit retry, neutral historical
workflow styling, accessible status text, focus, and narrow layouts.
- Added delta-only background history synchronization using ordinary snapshot
metadata, resumable per-issue cursors, catch-up verification, rate-limit reset
evidence, idempotent client merging, and a pinned-past New activity action.
- Added fixed-duration full-history playback with proportional clustered event
ticks, accessible play/pause and speed controls, slow-frame-safe event
feedback, and reduced-motion captions that preserve map position and selection.
- Added exact milestone assignment, movement, and removal replay with minimal
GitHub event payloads and temporal milestone hulls that reshape around fixed
star coordinates without moving the constellation or camera.
- Added resumable, one-issue-at-a-time close/reopen history import with
transactional page checkpoints, stable lifecycle replay, and schema migration
from creation-only ledgers without repository-wide history refetches.
- Added a durable local SQLite issue-creation ledger, authenticated history
deltas, and a bottom timeline that scrubs historical issue visibility without
moving the constellation or querying GitHub during scrubbing.
- Fixed installed desktop startup so a no-argument launch opens the existing
empty repository-selection shell instead of treating the installation
directory as a Git repository.
Expand Down
9 changes: 3 additions & 6 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
# Repository instructions

Assume a native Windows 11 development environment.

- Do not use WSL, Linux shells, Linux toolchains, or `/mnt/*` paths for development, builds, tests, benchmarks, or validation.
- Run commands with native Windows PowerShell or `cmd.exe` from Windows paths such as `D:\dev`.
- Use native Windows executables and toolchains (`cargo.exe`, `rustc.exe`, `bun.exe`, and `powershell.exe`).
- If native Windows command execution is unavailable, stop and report the environment limitation instead of substituting WSL results.
- Keep Windows and macOS packaging checks on their native CI runners; do not
substitute WSL or cross-compilation for release evidence.
- Use the repository's pinned Node/npm toolchain and the native Rust toolchain.
- Maintain release notes as an append-only, newest-first changelog with a separate section for every shipped version and an `Unreleased` section for pending work.
- Never fold new changes into an older release section or repeat cumulative changes under every version.

Expand Down
92 changes: 92 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
resolver = "2"
members = [
"crates/core",
"crates/history",
"crates/github",
"crates/server",
"crates/app",
Expand All @@ -19,6 +20,7 @@ serde = { version = "1", features = ["derive"] }
serde_json = "1"
keyring = { version = "3.6.3", features = ["apple-native", "windows-native", "sync-secret-service"] }
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
rusqlite = { version = "0.38", features = ["bundled"] }
tauri = { version = "2.11.5", features = ["tray-icon"] }
tauri-build = "2.6.3"
tauri-plugin-dialog = "2.7.2"
Expand Down
Loading
Loading