Commit Graph
2260 Commits
Author SHA1 Message Date
thePR0M3TH3AN 842f0ca9c7 Merge branch 'overstory/builder-sortfilter/SeedPass-de11' into beta 2026-03-10 15:14:13 -04:00
thePR0M3TH3ANandClaude Sonnet 4.6 3b031eb365 feat(tui-v3): sort/filter keyboard shortcuts, active-state toolbar, clear filter
- Add keyboard bindings: n=sort label_asc, r=sort modified_desc, k=sort kind, f=clear filter
- Add action_sort_label/recent/kind/clear_filter actions to app.py
- GridToolbar: add 'Kind' sort button, '[X] Clear' button
- GridToolbar: visual active-state via .active CSS class (synced via watchers)
- Add 5 new smoke tests: keyboard sort, clear button, clear shortcut, state persistence, toolbar active class

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-10 08:23:35 -04:00
thePR0M3TH3AN 82d33925ad feat(graph): add multi_hop_neighbors, filtered_neighbors to SearchService; enhance LinkedItemsPanel with keyboard nav, kind filter, atlas context 2026-03-10 08:22:20 -04:00
thePR0M3TH3AN 80fe87bc36 mulch: update expertise 2026-03-09 21:40:45 -04:00
thePR0M3TH3AN 4c03890266 Merge branch 'overstory/builder-sigsegv-v4/SeedPass-1d93' into beta 2026-03-09 20:55:19 -04:00
thePR0M3TH3ANandClaude Sonnet 4.6 5dc8e015ae fix: replace sys.exit(0) with os._exit(0) to prevent SIGSEGV on graceful exit
Python interpreter teardown with C extensions (Textual, crypto libs) can
trigger SIGSEGV (-11) when sys.exit() is called. os._exit() bypasses the
teardown entirely, producing a clean exit code 0.

Three call sites replaced:
- _cleanup_and_exit() in handle_remove_fingerprint (~line 254)
- graceful exit path in main loop (~line 1520)
- signal_handler shutdown path (~line 1862)

Fixes: SeedPass-1d93

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-09 12:49:23 -04:00
thePR0M3TH3AN f2b7feb738 Merge branch 'overstory/builder-profile-v4/SeedPass-9033' into beta 2026-03-09 12:48:43 -04:00
thePR0M3TH3AN 96f64d00bc tui3: guard against non-interactive stdin with TTY check
Add _stdin_is_tty() helper and check at start of _launch_tui3_or_exit.
When stdin is not a TTY, emit a clear error message and exit 1 instead
of propagating an EOF exception from seed setup prompts.
Add test for non-interactive stdin error path; patch _stdin_is_tty in
existing tests that expect tui3 launch to proceed.

Fixes SeedPass-6d26
2026-03-09 12:45:34 -04:00
thePR0M3TH3ANandClaude Sonnet 4.6 54316d33ed polish: profile/maintenance screen improvements
- maintenance.py: add status icons to format_status, add warning CSS class
- profile.py: improve intro text, use ► marker for active profile
- pubkey.py: use explicit Binding() for keybindings
- relays.py: remove stray `import traceback` in _perform_sync
- security.py: clarify backup passphrase label

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-09 12:45:07 -04:00
thePR0M3TH3AN 0cf1d58c9c mulch: update expertise 2026-03-07 08:09:15 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 44fe1c630a v3 polish: rename Profiles button, improve restore guidance
- action_bar.py: rename 'Remove Seed' label to 'Profiles' for clarity
- app.py: add warning prefix (⚠) to nostr/backup restore pre-action
  status messages; add success message to generate flow; improve
  import success message wording
- test_tui_v3_parity.py: update label assertions from 'Remove Seed'
  to 'Profiles' (two tests)

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-07 08:08:56 -05:00
thePR0M3TH3AN 0cb9259ad1 update 2026-03-06 13:55:08 -05:00
thePR0M3TH3AN 102f0369a3 seeds: sync 2026-03-06 2026-03-06 13:53:58 -05:00
thePR0M3TH3AN 30d558132b mulch: update expertise 2026-03-06 13:53:57 -05:00
thePR0M3TH3AN 41f000e802 Merge branch 'overstory/builder-action-strip/SeedPass-57f6' into beta
# Conflicts:
#	src/tests/test_tui_v3_parity.py
2026-03-06 13:47:40 -05:00
thePR0M3TH3AN a6c7391f78 Merge branch 'overstory/builder-app-cmds/SeedPass-865f' into beta 2026-03-06 13:47:35 -05:00
thePR0M3TH3AN 1a58c63658 Merge branch 'overstory/builder-settings-inspector/SeedPass-865f' into beta 2026-03-06 13:47:31 -05:00
thePR0M3TH3AN 27f9139008 mulch: update expertise 2026-03-06 13:44:44 -05:00
thePR0M3TH3AN 00b1b7d3ec feat(tui-v3): migrate legacy utility/maintenance commands to v3 CommandProcessor 2026-03-06 13:44:07 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 ea5ad1f093 Fix managed_account QR exclusion and bare except in action_bar
- Remove 'qr' from managed_account context actions (accounts don't expose
  a QR-scannable key like seeds/nostr do)
- Change bare 'except:' to 'except Exception:' on vault manager check
- Add test_v3_action_bar_managed_account_excludes_qr in parity tests

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-06 13:41:24 -05:00
thePR0M3TH3AN 8dbb8e065c mulch: update expertise 2026-03-06 13:37:12 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 446d1ef2b8 TUI v3: tighten action strip + restore/import guidance (SeedPass-57f6)
action_bar.py:
- Fix global row broken handlers: Remove Seed → open_profile_management,
  Backup Data → open_backup_parent_seed, Export/Import Data → open_palette
  (export/import need a path argument, palette is the right entry point)

add.py:
- seedplus-hint: mention BIP-85 explicitly, reference Seed+ (C) action
- AddEntryScreen success notify: include reveal/copy shortcut hint
- SeedPlusScreen: add #seedplus-warning label explaining deterministic
  derivation and index uniqueness requirement
- SeedPlusScreen success notify: mention index and parent seed

app.py:
- RecoverProfileScreen: set success status before bootstrap fires
- CreateProfileScreen: add intent messaging for nostr/backup restore modes
  with progress description and post-success status

grid.py:
- Add stored_password to secrets filter kind_map (was missing)

tests:
- test_tui_v3_parity: add test_v3_action_bar_global_row_uses_correct_handlers
- test_tui_v3_smoke: add seedplus-hint BIP-85 check, seedplus-warning label
  check, recover success-status check

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-06 13:36:34 -05:00
thePR0M3TH3AN 50c4a0346e mulch: update expertise 2026-03-06 13:36:13 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 02c4ef9e24 feat(tui-v3): add settings utility section and inspector kind-specific hints
Settings screen now renders a UTILITY & MAINTENANCE card listing stats,
db-export, db-import, checksum-verify/update, totp-export, and offline
mode commands. Renders gracefully when config service is offline (no
early return — all sections including utility always display).

Inspector adds UtilityHintsBar widget that persists across board swaps
via a #board-slot Vertical. Hints update to show kind-appropriate
palette commands (copy, reveal keybinds, QR, npub, managed-load, etc.).
BoardContainer now routes managed_account to its own SeedBoard hint set.

Two new smoke tests verify the utility section renders and that hints
update correctly for password, nostr, and idle states.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-06 13:35:49 -05:00
thePR0M3TH3AN 41ca95e1fc mulch: update expertise 2026-03-06 13:30:29 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 50d7b1827d Polish TUI v3 maintenance and profile screens
- maintenance.py: refine CSS visual hierarchy (rounded intro card borders,
  red-tinted danger buttons, consistent panel/footer margins)
- profile.py: clearer label text, improved intro and confirmation messages
- security.py: updated intro text and footer hints for both screens
- pubkey.py: rename DEFAULT_CSS to CSS, update intro and footer text
- relays.py: rename DEFAULT_CSS to CSS, add intro card, update footer/status
- test_tui_v3_smoke.py: update assertions to match new text

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-03-06 13:30:08 -05:00
thePR0M3TH3ANandClaude Opus 4.6 ca31abf33e Fix Overstory multi-agent setup and add quick reference docs
- Update agent models from gpt-5.3-codex to claude-compatible names
  (opus for coordinator/lead, sonnet for builder/scout/reviewer/merger,
  haiku for monitor)
- Switch runtime from codex to claude (codex requires interactive TTY,
  incompatible with tmux-based agent spawning)
- Add Overstory ecosystem links to AGENTS.md and CLAUDE.md
- Add docs/overstory_quick_reference.md with startup, monitoring, and
  CLI commands
- Sync seeds issue state

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-03-06 13:12:46 -05:00
thePR0M3TH3AN 46ffff577b Improve v3 grid navigation and graph browsing 2026-03-06 07:10:36 -05:00
thePR0M3TH3AN 6e7cd5b734 mulch: update expertise 2026-03-06 07:10:23 -05:00
thePR0M3TH3AN 75e4f0d890 seeds: sync 2026-03-06 2026-03-06 07:10:23 -05:00
thePR0M3TH3AN 4011464c31 Advance v3 search, atlas, and comms planning 2026-03-05 23:26:05 -05:00
thePR0M3TH3AN e8a2b81e7b Make TUI v3 the default and add index0 foundations 2026-03-05 21:52:39 -05:00
thePR0M3TH3AN 0fa8aebc1b chore: commit remaining test artifacts 2026-03-03 23:12:48 -05:00
thePR0M3TH3AN 033870f2df fix: harden legacy/tui3 non-tty flows and shutdown stability 2026-03-03 21:56:55 -05:00
thePR0M3TH3AN d3fc572c4e chore: track overstory workspace and session artifacts 2026-03-03 21:25:04 -05:00
thePR0M3TH3AN 538ce42338 chore: format codebase and harden v3 CLI/CI gates 2026-03-03 21:22:19 -05:00
thePR0M3TH3AN 95e5a14b57 fix(tui_v3): update action buttons to use rich text click bindings and make inspector board scrollable 2026-03-03 13:21:16 -05:00
thePR0M3TH3AN 86602facfa update 2026-03-03 10:48:08 -05:00
thePR0M3TH3AN 33e727841c feat(tui_v3): full end-to-end slice implemented for managed sub-accounts including UI breadcrumbs and mock test validations 2026-03-03 10:27:08 -05:00
thePR0M3TH3AN be69e3e52d docs(memory): add TORCH learnings from TUI v3 UI refactoring and interactive testing 2026-03-03 09:00:30 -05:00
thePR0M3TH3AN cadfcd78ed style(tui_v3): apply retro / theme across all remaining TUI v3 screens to align with mockups 2026-03-03 08:56:25 -05:00
thePR0M3TH3AN 30b61e76ea test(tui_v3): expand interactive test suite with sub-profile, data io, and editing parity checks 2026-03-03 08:49:11 -05:00
thePR0M3TH3AN 1987d7707e style(tui_v3): full 1:1 ui mockup parity pass with retro black and white theme 2026-03-03 08:29:15 -05:00
thePR0M3TH3AN 55384c1a2f feat(tui_v3): full protocol parity via generalized edit screen and vault I/O 2026-03-03 08:08:10 -05:00
thePR0M3TH3AN 9b3680d45a feat(tui_v3): implement nostr relay management and notification usage parity 2026-03-03 07:56:12 -05:00
thePR0M3TH3AN c822eeb602 feat(tui-v3): implement core functional parity (Phase A/B)
- Implement secure data parity (Reveal/QR/Copy) for SSH, PGP, Nostr, Key-Value, and Documents.
- Update derive_pgp_key and API to support PGP Public Key retrieval and copying.
- Implement managed account loading/exiting (ml/mx) with reactive profile updates.
- Integrate semantic search (keyword/hybrid/semantic) into the entry grid.
- Create AddEntryScreen (unified wizard), SeedPlusScreen (BIP-85), and DocumentEditScreen.
- Add grid filter presets (secrets, docs, keys, 2fa) and archive view toggle.
- Update ActionBar and GridMetrics to be dynamic and context-aware.
- Add comprehensive v3 parity tests and update existing core tests for PGP tuple changes.
2026-03-03 07:40:34 -05:00
thePR0M3TH3AN d3920ccc4c Update TUI v3 plan and land parity fixes with smoke tests 2026-03-02 23:43:07 -05:00
thePR0M3TH3AN e7ea8a4187 feat(tui-v3): harden grid selection and complete functional foundation
Implemented row-highlighted selection in EntryDataTable for real-time
inspector updates. Finalized specialized boards for all entry kinds.
Verified full-screen screen transitions and core action logic (reveal,
QR, archive, copy) via interactive agent walkthrough. CLI unified with
--tui [legacy|v2|v3] selector.
2026-03-02 23:22:48 -05:00
thePR0M3TH3AN 66a89de13f feat(tui-v3): migrate reveal and QR logic with confirmation support
Implemented _resolve_sensitive_payload and _show_sensitive_view in v3 app.
Added double-press confirmation logic for high-risk entry kinds. Updated
BaseBoard and all specialized boards to reactively render revealed content
or QR codes. Enabled sensitive actions within the MaximizedInspectorScreen.
Unified board update logic via _update_board_sensitive.
2026-03-02 23:18:14 -05:00
thePR0M3TH3AN 0c59c20c64 feat(tui-v3): implement full inspector board suite and reactive action bar
Added specialized boards for SSH, PGP, Nostr, and Key-Value entries with
high-fidelity ASCII rendering. Created reactive ActionBar widget for bottom
shortcuts and context info. Wired global key bindings (v, g, a, c, z) to
the main app shell. All entry types now have dedicated inspector and
maximized views.
2026-03-02 23:15:31 -05:00