Commit Graph
35 Commits
Author SHA1 Message Date
google-labs-jules[bot] 86ffb8cb2a Define centralized cache policies and wire them into fetchers 2026-01-17 19:12:09 +00:00
google-labs-jules[bot] 4f1b180c94 docs: improve architectural comments in NostrClient 2026-01-17 05:21:45 +00:00
google-labs-jules[bot] 065e74769c Refactor NIP-46 login UI to be cleaner and QR-first
- Simplified `components/login-modal.html` to center the QR code and use a "Copy Link" button instead of a large textarea.
- Updated `js/ui/loginModalController.js` to support the new DOM structure and error handling.
- Added `docs/nip46-roadmap.md` to document current state and future features.
- Fixed `NostrClient.destroy()` usage (synchronous void method) in `js/nostr/client.js`.
- Relaxed NIP-46 `connect` response validation in `js/nostr/client.js` and `js/nostr/nip46Client.js` to accept "ack" (case-insensitive) as a valid success signal, preventing timeouts with signers that do not echo the secret.
2026-01-16 20:45:58 +00:00
google-labs-jules[bot] bdc86aaef6 Fix future timestamp bug and improve loading spinner UX 2026-01-13 14:48:56 +00:00
thePR0M3TH3AN db2b08378d Add session actor hook for moderation sync 2026-01-11 08:50:22 -05:00
google-labs-jules[bot] c934e243c3 feat: warn on magnet-only uploads and make video fetch limit configurable
- Add a confirmation dialog in `UploadModal.js` when a user uploads a video with only a magnet link to warn about potential data loss.
- Replace the hardcoded limit of 300 in `NostrClient.fetchVideos` with a configurable limit that respects `DEFAULT_VIDEO_REQUEST_LIMIT` and `MAX_VIDEO_REQUEST_LIMIT`, improving client-side scalability.
2026-01-08 01:24:31 +00:00
google-labs-jules[bot] 1b577d3326 Refactor: remove legacy compatibility systems
- Removed `WATCH_HISTORY_LEGACY_KIND` (30078) support from watch history fetch and config.
- Removed `WATCH_HISTORY_LEGACY_LIST_IDENTIFIERS` from config.
- Removed `LEGACY_EVENTS_STORAGE_KEY` (bitvidEvents) migration logic from client.
- Removed `loadLegacyAdminState` and `LEGACY_STORAGE_KEYS` from admin list store.
- Updated tests to remove references to legacy kinds.
2026-01-06 19:48:55 +00:00
google-labs-jules[bot] a7b3f5572b Fix missing session actor for anonymous users
- Update `mintSessionActor` in `js/nostr/client.js` to support `nostr-tools` v2 `generateSecretKey` and properly handle `getPublicKey` input (hex vs bytes).
- Ensure `ensureSessionActor` awaits `ensureNostrTools()` before attempting to mint a new actor.
- This resolves the issue where video view events and watch history updates failed for non-logged-in users with a "missing-actor" error.
2026-01-06 02:38:56 +00:00
thePR0M3TH3AN 8a4e4754f2 Revert "fix(logs): suppress dm sync spam and allow local image paths" 2026-01-05 21:26:32 -05:00
google-labs-jules[bot] c64d70ad88 fix(nostr): restore session actor creation for view counts 2026-01-05 21:41:58 +00:00
google-labs-jules[bot] 8293caf6d3 Refactor watch history to use simplified monthly record schema 2026-01-05 14:44:45 +00:00
google-labs-jules[bot] 498d9cb5b2 Revise watch-history tags to use month IDs
Refactors the watch-history system to prioritize `YYYY-MM` month identifiers over legacy snapshot IDs in event tags, storage keys, and cross-module references. Updates event schemas, storage keying (v3), and client interfaces to align with the new month-based structure. Renames `snapshotId` parameters to `taskId` for republishing operations.
2026-01-05 14:21:53 +00:00
google-labs-jules[bot] 595d4cbe07 Refactor watch history to use single monthly event
Replaces the legacy chunked storage architecture with a single encrypted event per month.
- Renames `buildWatchHistoryChunkEvent` to `buildWatchHistoryEvent`.
- Updates `WatchHistoryManager` to publish and fetch single events, maintaining read compatibility for legacy chunks.
- Simplifies payload construction and removes chunk indexing logic.
- Updates tests to verify single-event publishing and legacy fallback.
2026-01-04 22:03:34 +00:00
thePR0M3TH3AN ba666bdaba Refactor watch history payload building 2026-01-03 13:57:46 -05:00
thePR0M3TH3AN db27c7f56a Refactor nostr event cache persistence 2026-01-02 15:33:51 -05:00
thePR0M3TH3AN ff07ed8e01 Add paging and limits to nostr video subscription 2026-01-02 14:11:41 -05:00
thePR0M3TH3AN a9f2c4ec37 update 2025-11-03 18:57:43 -05:00
thePR0M3TH3AN 3b4492461c Ensure video reverts always emit d tag 2025-10-30 14:43:19 -04:00
thePR0M3TH3AN 6eb8594e28 Add file hash support to NIP-94 mirrors 2025-10-30 12:41:49 -04:00
thePR0M3TH3AN 864447fc71 Preserve d tag when editing NIP-33 video notes 2025-10-30 09:22:15 -04:00
thePR0M3TH3AN f3007b9e0b Preserve d tag when editing nostr videos 2025-10-30 08:06:49 -04:00
thePR0M3TH3AN 2b22f0f739 Normalize NIP-94 MIME tags 2025-10-29 21:35:38 -04:00
thePR0M3TH3AN 487fc740da Gate EventEmitter listener warnings behind verbose mode 2025-10-27 14:58:09 -04:00
thePR0M3TH3AN 7de8eddcbe Throttle COUNT diagnostics unless verbose dev mode 2025-10-27 14:48:29 -04:00
thePR0M3TH3AN 27bafdd3de Add verbose dev mode toggle for COUNT warnings 2025-10-27 14:36:00 -04:00
thePR0M3TH3AN 4183a521d7 Shim SimplePool for legacy API expectations 2025-10-26 21:41:33 -04:00
thePR0M3TH3AN a534e20c10 Add DM decryptor and service integrations 2025-10-26 19:07:30 -04:00
thePR0M3TH3AN e050817cb1 Ensure active NIP-07 signer before editing videos 2025-10-26 16:07:41 -04:00
thePR0M3TH3AN 4d3bf6f993 Fix NIP-71 publish pubkey normalization 2025-10-26 14:43:04 -04:00
thePR0M3TH3AN fbcc3297d3 Hydrate extension signer capabilities for edits 2025-10-26 11:23:11 -04:00
thePR0M3TH3AN 3cf18830a4 Ensure nip07 signers expose nip04 helpers 2025-10-25 15:35:53 -04:00
thePR0M3TH3AN 9717342bfe Add Nostr video comment helpers 2025-10-24 14:36:19 -04:00
thePR0M3TH3AN 7f694e6a3a Add video reaction publishing helpers 2025-10-23 08:41:13 -04:00
thePR0M3TH3AN 1ff3523bd0 Improve Nostr watch history snapshot caching 2025-10-22 20:13:10 -04:00
thePR0M3TH3AN de0e7a1a3e Refactor Nostr client orchestrator 2025-10-22 16:16:38 -04:00