Skip to content

🌈 [DRAFT · PULSE+ preview] truecolor UI redesign — do not merge before parity v1#55

Draft
FabioRocha231 wants to merge 23 commits into
inbrace-tech:mainfrom
FabioRocha231:feat/rust-statusline
Draft

🌈 [DRAFT · PULSE+ preview] truecolor UI redesign — do not merge before parity v1#55
FabioRocha231 wants to merge 23 commits into
inbrace-tech:mainfrom
FabioRocha231:feat/rust-statusline

Conversation

@FabioRocha231

Copy link
Copy Markdown
Contributor

🌈 PULSE+ — the truecolor UI redesign (preview, do not merge before parity v1)

This is the PULSE+ direction: the statusline rendered in 24-bit truecolor (38;2;r;g;b gradients) with density modes — the "after" that lands on top of parity v1, per the plan in #27 (redesign ships as its own follow-up, once the byte-parity port is merged + distributed).

⚠️ Draft / preview. Not for review-to-merge yet. This is the original pre-slicing branch, so besides the PULSE+ render.rs it also still carries the earlier distribution tooling (cargo-dist, release CI, edition-2024/MSRV) and a Plan-3 spec doc — ~26 files. The clean, minimal PULSE+ change will be a proper follow-up stacked on parity v1 (the #43#54 slices) once that stack lands in main.

Order of the world:

  1. Merge the parity-v1 stack first: fix: convert rate-limit resets_at to epoch before ETA/pace math #42 (bash fix) → feat: scaffold Rust crate (edition 2024, serde + jiff) #43test: golden parity harness + Rust CI + hot-path bench (parity v1 · slice 11/11) #54 (slices 0–11, byte-exact 256-color).
  2. Then rebuild PULSE+ as a small follow-up on top of it (truecolor palette swap + densities), replacing this preview.

Opened to anchor the PULSE+ direction visibly. Renders 24-bit; parity stack stays the 256-color oracle-exact v1.

FabioRocha231 and others added 23 commits July 5, 2026 09:10
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…golden

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…hen e2e assert

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… dirs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Edition 2024 (default for new crates); its 1.85 stabilization sets the
MSRV floor, subsuming the earlier is_none_or/1.82 floor.
One-time reformat to the default rustfmt style so CI can gate on `cargo fmt --check` without a nightly-only rustfmt.toml. No logic change.
Adds .github/workflows/rust.yml gating rust/: rustfmt check, clippy
(deny warnings) + cargo test across ubuntu/macos/windows, an MSRV
build pinned to 1.85.0, and a fixed-name "Rust" fan-in gate job for
branch protection. dtolnay/rust-toolchain pinned to commit SHAs per
repo convention (matches actions/checkout pin in ci.yml).
dist-workspace.toml drives cargo-dist from the repo root at the rust/
crate. Generates release.yml (binary build matrix + shell/powershell
installers + GitHub Release assets) on v* tags. Renames the npm
changesets workflow to release-npm.yml to free the release.yml name;
their tag/branch triggers do not overlap.
…lision

The previous release.yml triggered on push tags matching '**[0-9]+.[0-9]+.[0-9]+*',
which also matched npm changesets tags like @inbrace-tech/tokenline@1.2.0. Setting
tag-namespace = "tokenline" in dist-workspace.toml anchors the trigger to a
tokenline- prefix, renaming the generated workflow to tokenline-release.yml.
Also ignore the workspace-root target/ dir: cargo-dist builds there
(not rust/target/, which is already covered), and running `dist build`
locally left it untracked and one `git add -A` away from committing
release archives/installers.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant