One Nectenda status icon, in the note header, the ribbon and the status bar #192

Merged
nectenda-agent merged 1 commit from worktree-nec-134-status-surfaces into main 2026-09-27 08:42:29 +01:00
Collaborator

Task: NEC-134 — https://projectron.nerchure.com/tasks/134

One Nectenda status icon, which the person can show in any of three places. Each place looks and works the same.

  • Places, each switchable under Editing → Nectenda status:

    • each note's header (on by default)
    • the ribbon, now the Nectenda mark rather than folder-sync (on)
    • the status bar (off by default; never shown on a phone)

    The last place showing cannot be turned off. A vault that had #188's status bar switched on keeps it.

  • Same by construction: all three places are drawn by one renderIcon(). Each shows the tone colour, the full status as its label, a people count at the bottom right, and an accent dot at the top right when something is waiting for you. The header describes its own note. The ribbon and status bar describe the active note, or just the connection when no note is open.

  • One menu, opened from any of the three:

    • the status in words, now including how many folders sync in this vault
    • Go to
    • Shared with you: N waiting…
    • Folder settings…
    • Invite to folder… (owners only)
    • Inspect sync state
    • the pointer switches
    • Open Nectenda settings
  • Untracked notes now show offline grey instead of the busy accent.

  • The status bar text item from #188 is gone.

Tested:

  • Unit: 840 pass. The owner, waiting-count, last-place, untracked and waiting-dot rules each fail their test when inverted.
  • e2e: new parity test in sync-status.test.ts checks that all three places show the same mark, tone, count, dot, label and menu. It fails when the status bar skips renderIcon. commands.test.ts now opens settings through the ribbon's menu.
  • Full multi-vault suite: 94 pass. Compatibility stage against 0.2.1: 23 pass.
  • Checked by eye in the docs-shots captures.

Changelog

Choose where Nectenda's status appears — each note's header, the ribbon (now the Nectenda logo) or the status bar — each showing the same icon and opening the same menu, which now lists who is in the note, anything waiting for you, and the folder's settings.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NnpsVLx9NmMG2N2nJnA8mR

Task: NEC-134 — https://projectron.nerchure.com/tasks/134 One Nectenda status icon, which the person can show in any of three places. Each place looks and works the same. - **Places**, each switchable under **Editing → Nectenda status**: - each note's header (on by default) - the ribbon, now the Nectenda mark rather than `folder-sync` (on) - the status bar (off by default; never shown on a phone) The last place showing cannot be turned off. A vault that had #188's status bar switched on keeps it. - **Same by construction**: all three places are drawn by one `renderIcon()`. Each shows the tone colour, the full status as its label, a people count at the bottom right, and an accent dot at the top right when something is waiting for you. The header describes its own note. The ribbon and status bar describe the active note, or just the connection when no note is open. - **One menu**, opened from any of the three: - the status in words, now including how many folders sync in this vault - Go to <person> - Shared with you: N waiting… - Folder settings… - Invite to folder… (owners only) - Inspect sync state - the pointer switches - Open Nectenda settings - **Untracked notes** now show offline grey instead of the busy accent. - The status bar text item from #188 is gone. Tested: - Unit: 840 pass. The owner, waiting-count, last-place, untracked and waiting-dot rules each fail their test when inverted. - e2e: new parity test in `sync-status.test.ts` checks that all three places show the same mark, tone, count, dot, label and menu. It fails when the status bar skips `renderIcon`. `commands.test.ts` now opens settings through the ribbon's menu. - Full multi-vault suite: 94 pass. Compatibility stage against 0.2.1: 23 pass. - Checked by eye in the `docs-shots` captures. ## Changelog Choose where Nectenda's status appears — each note's header, the ribbon (now the Nectenda logo) or the status bar — each showing the same icon and opening the same menu, which now lists who is in the note, anything waiting for you, and the folder's settings. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01NnpsVLx9NmMG2N2nJnA8mR
One Nectenda status icon, in the note header, the ribbon and the status bar
Some checks failed
Release note / release-note (pull_request) Successful in 13s
CI / build (pull_request) Failing after 1m17s
CI / promote (pull_request) Has been cancelled
CI / e2e (pull_request) Has been cancelled
a7f3161dd6
The status bar item from #188 showed text beside a dot and opened
settings; the note-header icon had a menu. The person asked for one thing
that behaves the same wherever it appears, and to choose where that is.

- Three places, each switchable under Editing → Nectenda status: each
  note's header (on), the ribbon — now the Nectenda mark, not folder-sync
  (on), and the status bar (off; never on a phone). The last one showing
  cannot be turned off. A vault that kept #188's status bar on keeps it.
- All three are drawn by one renderIcon(): the mark in the tone colour,
  the same label, a number at the bottom right for other people in the
  note, and an accent dot at the top right when an invitation or a shared
  folder is waiting. The header describes its own note; the ribbon and
  status bar describe the active note, or the connection when none is open.
- All three open one menu: the status in words (now with the folders
  syncing in this vault), Go to <person>, Shared with you: N waiting…,
  Folder settings… / Invite to folder… (owners) / Inspect sync state, the
  pointer switches, Open Nectenda settings.
- An untracked note now reads as offline grey rather than the busy accent:
  nothing is moving, and the accent said otherwise.

sync-status.test.ts checks the three places show the same mark, tone,
marks, label and menu (mutation-checked by skipping one); commands.test.ts
opens settings through the ribbon's menu.

Task: NEC-134

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NnpsVLx9NmMG2N2nJnA8mR
cruelacid force-pushed worktree-nec-134-status-surfaces from a7f3161dd6
Some checks failed
Release note / release-note (pull_request) Successful in 13s
CI / build (pull_request) Failing after 1m17s
CI / promote (pull_request) Has been cancelled
CI / e2e (pull_request) Has been cancelled
to 7b766a90b0
All checks were successful
Release note / release-note (pull_request) Successful in 13s
CI / build (pull_request) Successful in 4m38s
CI / e2e (pull_request) Successful in 5m26s
CI / promote (pull_request) Has been skipped
Deploy site / deploy (push) Successful in 49s
CI / build (push) Successful in 4m57s
CI / e2e (push) Successful in 5m22s
CI / promote (push) Successful in 31s
2026-09-27 08:36:50 +01:00
Compare
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
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
Nectenda/nectenda!192
No description provided.