Commit Graph

7 Commits

Author SHA1 Message Date
Khalid Abdi 8ba7256105 chore: require release-after-push in CLAUDE.md; update changelog
Document that finishing a unit of work and pushing must always be followed by
a version bump (root + backend + frontend package.json) and a Docker Hub image
publish — temetro ships as prebuilt images, so an un-released change never
reaches a self-hosted clinic. Record this session's changes in CHANGELOG.md.
(The two stray root logo PNGs were removed in an earlier commit this session.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 21:34:20 +03:00
Khalid Abdi 6bd81bd7dd docs: wallet app UI is now HeroUI Native, not @expo/ui
The sibling patient wallet app was redesigned to build its UI with HeroUI
Native (Uniwind/Tailwind); only the tab bar stays expo-router NativeTabs.
Update the "Patient wallet app" note to match.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 21:24:01 +03:00
Khalid Abdi 2d47abcc42 feat: patient wallet — real Signing, encrypted share relay, import-from-app
Backend
- clinic Ed25519 signing key (services/signing.ts, routes/signing.ts,
  clinic_signing_keys table) — Settings → Signing is now real
- @noble wallet-crypto (lib/wallet-crypto.ts): ed25519 identity, base58check
  wallet numbers, sealed-box (x25519 + xchacha20poly1305)
- /wallet Socket.io relay namespace (challenge-signed device auth) forwarding
  only ciphertext; emitToWallet helper
- import-from-app flow (routes/patients-wallet.ts, services/wallet-share.ts):
  request-share → patient approval → decrypt + verify → review draft → commit
- temporary shares: patients.share_expires_at + 5-min auto-delete sweep; revoke

Frontend
- SigningPanel wired to live key/fingerprint/rotate + shared-records list
- "Import from a patient app" dialog (lib/signing.ts, import-from-wallet-dialog)
  reusing the draft-review path; temporary badge on the patient list

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 18:19:57 +03:00
Khalid Abdi 651c197f94 docs: correct landing-page location in CLAUDE.md
The marketing landing page is not a separate "temetro-landing" GitHub repo and
is not in the monorepo — it lives in the sibling ~/Desktop/temetro/landing-page
folder (next to the docs site), its own git repo. Fix both the root and
frontend CLAUDE.md notes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 19:24:39 +03:00
Khalid Abdi e88638ca48 docs: point CLAUDE.md at the external docs site and require doc updates
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 20:18:44 +03:00
Khalid Abdi 73bce1f70c docs: update root CLAUDE.md for the monorepo layout
Reflect that frontend/ and backend/ are now subdirectories of a single
git repo (the old per-folder repos are merged in); landing page lives in
a separate temetro-landing repo; note the POSTGRES_PORT workaround.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 18:19:27 +03:00
Khalid Abdi d156fc7db0 chore: initialize temetro monorepo (shared root files)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:59:06 +03:00