Attention as a1–a4: set bands directly, retire cycling #17

Merged
eblume merged 2 commits from feature/attention-a1-a4 into main 2026-06-09 09:15:38 -07:00
Owner

Summary

Reworks attention so it's set directly instead of cycled, and surfaces the band as a1a4 (ordered by intensity) everywhere instead of the colour words or the old Todoist-style p1p4. Colour mappings are unchanged — only the words.

  • a1 = red, a2 = orange, a3 = white, a4 = blue

heph-tui

  • Press a then 14 to set a band directly (status-line hint while armed; any non-digit cancels).
  • Retired the A cycle and the duplicate b push-to-blue gestures — cycling past blue used to make a task vanish from the current view with no way back.
  • Quick-add moved off an (new). Legends + status messages use a1a4.

heph-quickadd (egui popover)

  • Chip label ⚑ a2, hint type a1–a4 …, example strings remapped (colour-preserving).

PWA

  • Chip/hint/placeholder show a1a4; the ⚑ Attn action now opens a band picker (a1–a4 with colour dots) instead of cycling. Service-worker cache bumped.

Shared quick-add parser (hephd)

  • Now accepts a1a4 (a1=red … a4=blue); p1p4 are no longer recognized (they stay in the title). Used by heph-tui's n quick-add, heph-quickadd, and the PWA's JS port.

heph CLI

  • -a/--attention (on task/list/attention/edit/promote) accepts a1a4, a bare 14, or a colour word — normalized to storage colour before the RPC. New Attention::parse_input() in heph-core; heph attention echoes a1 (red).

Docs

  • Attention::ui_label() + parse_input() added to heph-core (one shared mapping). Updated docs/how-to/heph-pwa.md token table + triage section. Changelog fragment added.

Testing

  • cargo test (heph-core / heph / heph-tui / hephd) green
  • PWA node --test 17/17 green
  • cargo clippy clean; prek run --all-files all pass
  • CLI smoke: -a p1 rejected with a helpful message; -a 1 / -a red accepted; help text updated

Notes

No existing Hephaestus-project ticket overlapped this work (verified) — nothing to close. The frozen v1 tech-spec and the Todoist-historical p1 references in design.md were left as-is.

🤖 Generated with Claude Code

## Summary Reworks attention so it's **set directly** instead of cycled, and surfaces the band as **`a1`–`a4`** (ordered by intensity) everywhere instead of the colour words or the old Todoist-style `p1`–`p4`. Colour mappings are unchanged — only the words. - **a1 = red, a2 = orange, a3 = white, a4 = blue** ### heph-tui - Press **`a`** then **`1`–`4`** to set a band directly (status-line hint while armed; any non-digit cancels). - Retired the **`A` cycle** and the duplicate **`b` push-to-blue** gestures — cycling past blue used to make a task vanish from the current view with no way back. - Quick-add moved off `a` → **`n`** (new). Legends + status messages use `a1`–`a4`. ### heph-quickadd (egui popover) - Chip label `⚑ a2`, hint `type a1–a4 …`, example strings remapped (colour-preserving). ### PWA - Chip/hint/placeholder show `a1`–`a4`; the **`⚑ Attn` action now opens a band picker** (a1–a4 with colour dots) instead of cycling. Service-worker cache bumped. ### Shared quick-add parser (`hephd`) - Now accepts `a1`–`a4` (a1=red … a4=blue); **`p1`–`p4` are no longer recognized** (they stay in the title). Used by heph-tui's `n` quick-add, heph-quickadd, and the PWA's JS port. ### heph CLI - `-a/--attention` (on `task`/`list`/`attention`/`edit`/`promote`) accepts **`a1`–`a4`, a bare `1`–`4`, or a colour word** — normalized to storage colour before the RPC. New `Attention::parse_input()` in heph-core; `heph attention` echoes `a1 (red)`. ### Docs - `Attention::ui_label()` + `parse_input()` added to heph-core (one shared mapping). Updated `docs/how-to/heph-pwa.md` token table + triage section. Changelog fragment added. ## Testing - [x] `cargo test` (heph-core / heph / heph-tui / hephd) green - [x] PWA `node --test` 17/17 green - [x] `cargo clippy` clean; `prek run --all-files` all pass - [x] CLI smoke: `-a p1` rejected with a helpful message; `-a 1` / `-a red` accepted; help text updated ## Notes No existing Hephaestus-project ticket overlapped this work (verified) — nothing to close. The frozen v1 tech-spec and the Todoist-historical `p1` references in `design.md` were left as-is. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Retire the `A` attention cycle and the duplicate `b` push-to-blue gesture
in heph-tui. Attention is now picked directly: press `a` then `1`–`4`
(a1=red, a2=orange, a3=white, a4=blue, ordered by intensity). Cycling past
blue used to make a task vanish from the current view with no way back —
direct selection never does. Quick-add moves from `a` to `n`.

Surface the a1–a4 nomenclature everywhere instead of colour words or the
old p1–p4 priorities: heph-tui status/legend, the heph-quickadd chip + hint,
and the PWA chip/hint plus a new band-picker (replacing its cycle button).
The shared quick-add parser now accepts `a1`–`a4` (a1=red … a4=blue) and no
longer recognizes `p1`–`p4`. Colour mappings are unchanged; only the words.

Add Attention::ui_label() in heph-core so both Rust surfaces share the
mapping; bump the PWA service-worker cache; update the PWA how-to.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
feat(heph): accept a1-a4, 1-4, or colour words for -a/--attention
All checks were successful
Build / validate (pull_request) Successful in 8m24s
730863b832
The CLI's attention flag (on task/list/attention/edit/promote) now takes the
a1–a4 labels, a bare digit 1–4, or a colour word, normalizing to the storage
colour before the RPC. Adds Attention::parse_input() in heph-core (lenient
human input) alongside the strict storage parse(), with a clear error listing
the accepted forms. `heph attention` now echoes the band as `a1 (red)`.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
eblume merged commit 2911f418a5 into main 2026-06-09 09:15:38 -07:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
eblume/hephaestus!17
No description provided.