Commit graph

12 commits

Author SHA1 Message Date
Sirius DevOps
1a9b54d138
feat: Monero invoice/receipt frames, wallet RPC, /pay /tip
All checks were successful
ci / test (push) Successful in 2m50s
Signed inv/rcp codecs keyed by identity, payments table with unverified
incoming receipts, optional JSON-RPC sidecar (loopback/.onion HTTP only),
and TUI /pay /tip. OnionWire still holds no spend keys.
2026-09-10 14:37:43 -04:00
Sirius DevOps
d304cc4c3b
feat: signed friend profile frames and TUI /profile /who
Some checks failed
ci / test (push) Waiting to run
release / aarch64 (push) Failing after 14m14s
prf frames are ed25519-signed, friend-visible only (unknown pubkey is ignored).
/profile edits self; F5 and /who show the selected friend's last profile.
2026-09-10 14:25:31 -04:00
Sirius DevOps
c9d85d9ae5
feat: drop unknown typed frames instead of storing as chat
Some checks failed
ci / test (push) Has been cancelled
release / aarch64 (push) Failing after 2m8s
Classify decrypted plaintext before append_message so loc/prf/inv/rcp/png
and unknown xxx[space] prefixes never land in the message log.
2026-09-10 14:18:06 -04:00
Sirius DevOps
154bed7823
fix(ci): clippy clean on tests/hs.rs + pin step cwd to GITHUB_WORKSPACE
Some checks failed
ci / test (push) Successful in 3m47s
release / aarch64 (push) Failing after 5m25s
Two separate breakages from the first green-ish CI run:

1. tests/hs.rs asserted on a constant, which clippy rejects under
   -D warnings (clippy::assertions_on_constants) because the compiler
   folds the assert away. Compare through a runtime binding instead.

2. The release workflow built the aarch64 binary fine (13m02s, verified
   ARM ELF) but the publish step died with:
       /var/run/act/workflow/3: line 6: scripts/publish-release.sh: No such file or directory
   run: steps execute with act's cwd, not the repo root, so relative
   paths miss. Pin every run step with cd "${GITHUB_WORKSPACE}" (the
   pattern the osint-dashboard workflow already relies on).

Verified locally before pushing: cargo test 41 passed, cargo clippy
--all-targets -- -D warnings clean.
2026-09-10 13:50:57 -04:00
Sirius DevOps
7701f61c71
hs: wait 360s for HsDir publish; floor cbtmintimeout at 10s
Some checks failed
ci / test (push) Failing after 6m21s
180s fail-closed cut a working descriptor upload while status was still
Bootstrapping. Learned CBT can also drop to ~1s and kill HsDir circuits.
2026-09-10 13:43:23 -04:00
Sirius DevOps
82634db142
tui: ASCII onion chrome, themed panes, and real keyboard navigation
Some checks are pending
ci / test (push) Waiting to run
- Hand-written wordmark banner (<=80 cols, auto-collapses to a compact
  mark below banner width) plus onion glyph and themed screen headings
- Color-palette consts, stateful pane titles, highlighted selection row
  (accent + bg), context-sensitive footer that always keeps '? help'
- Pane focus model (roster/chat/composer) with Tab/Shift-Tab, 1/2/3,
  j/k + arrows, g/G, and a '?' help overlay; Esc closes any overlay
- New tests/tui_chrome.rs: banner widths, help overlay bindings, real
  footer helper at 80 and 120 cols, 80x24 draw smoke test
- README keybinding table updated to match

Locked helper strings (fingerprint_mismatch_banner, rotate_screen_text,
wipe_screen_text, parse_slash) unchanged; UI-only (src/tui.rs).
2026-09-10 13:01:40 -04:00
Sirius DevOps
5412e020bb
Add /wipe, /wipe-all, and threat model docs.
/wipe overwrites the message log and VACUUMs; identity and friends stay.
/wipe-all deletes the data dir after confirm so the next open is a new person.
Neither runs without a typed confirm screen.
2026-09-10 02:49:42 -04:00
Sirius DevOps
07aa97711c
[verified] Add F4 onion locator rotate with signed loc frames.
Identity key stays put. Typing ROTATE publishes a new Arti HS, hard-cuts
the old nickname, persists self.onion, and pushes loc to reachable friends.
2026-09-10 02:43:45 -04:00
Sirius DevOps
a2dfe3b2b8
Add Noise IK encrypted stream over Arti.
M3: framed Noise_IK_25519_ChaChaPoly_BLAKE2s on the onion pipe, QR-pinned
identity proofs, plaintext only in sqlite. Live two_node send of hello wire.
2026-09-10 02:07:40 -04:00
Sirius DevOps
4fb4648552
[verified] Add QR codec and ratatui roster.
M2: onionwire:v1 signed payload, Unicode QR, same-k locator update,
unknown-k approval in TUI. F4 is a no-op stub. No Tor in the bin.
2026-09-10 01:54:19 -04:00
Sirius DevOps
0a0dd3a8d8
[verified] Add sqlite store and first-run identity.
Friends are UNIQUE(pubkey); onion is a locator. Honor ONIONWIRE_HOME.
2026-09-10 01:43:02 -04:00
Sirius DevOps
84b9c940cc
Add M0 Arti two-node onion byte-pipe test.
Two in-process TorClients host v3 onions, echo ping over Tor, keep the
same locator across restart, and still accept after DormantMode::Soft.
2026-09-10 01:18:28 -04:00